Add e2e test
We recently had symbolication related issues that would have been caught had we tested the SDK through Sentry itself. Other repos have this, like React Native.
@bruno-garcia is there a reference to the issue describing the symbolication difficulties? What kind of end to end tests are we talking about? Different to the integration tests?
@jamescrosswell this came up in an offline meeting. The issue with current integration tests in the dotnet repo is that they only run locally, against a fake sentry server (a python script that prints out what it has received). This is fast and provides baseline checks what has been sent to the server by the CLI during build. However, because the dotnet SDK depends on server-side symbolication, it would be preferable to verify that it continues to work and doesn't break between .net versions, as it did in the past. This can be achieved by building a sample app, uploading it's debug files to sentry.io, running it, and checking sentry.io APIs to fetch the issue. There, we can verify the issue is symbolicated properly. I imagine this would be useful for native AOT, portable PDBs support, etc. Similar tests have been done for other things than symbolication, for example replay. Maybe this would be useful to test profile capture, which also got broken by a past .net release.
I'm assigned here because I've volunteered to prepare the scaffolding and some basic test as an example, because I have experience with these in other repos. There can be more tests added in the future, ideally by sentry-dotnet SDK maintainers.
Cool, thanks @vaind - that sounds like a big step up.
Consideration: Once we come to Android E2E-Testing, perhaps we can verify ProGuard as well. See also getsentry/sentry-dotnet#4647.