Skip to content

test(symbolicator): Run Sentry tests tagged with symbolicator#110336

Merged
Dav1dde merged 3 commits into
masterfrom
dav1d/test-run-symbolicator-tests
Mar 11, 2026
Merged

test(symbolicator): Run Sentry tests tagged with symbolicator#110336
Dav1dde merged 3 commits into
masterfrom
dav1d/test-run-symbolicator-tests

Conversation

@Dav1dde
Copy link
Copy Markdown
Member

@Dav1dde Dav1dde commented Mar 10, 2026

Changes to proguard processing broke CI recently: https://github.com/getsentry/sentry/actions/runs/22902803288/job/66453716070#step:6:1335

There are symbolicator tests in Sentry itself, we can also run them in the Symbolicator CI.

@Dav1dde Dav1dde requested review from a team as code owners March 10, 2026 18:18
@Dav1dde Dav1dde requested a review from a team March 10, 2026 18:18
@github-actions github-actions Bot added the Scope: Backend Automatically applied to PRs that change backend components label Mar 10, 2026
Comment thread Makefile Outdated
python3 -b -m pytest tests/symbolicator --reuse-db -vv --junit-xml=.artifacts/symbolicator.junit.xml -o junit_suite_name=symbolicator
python3 -b -m pytest tests/relay_integration/lang/javascript/ --reuse-db -vv -m symbolicator
python3 -b -m pytest tests/relay_integration/lang/java/ --reuse-db -vv -m symbolicator
# All Sentry tests tagged with Symbolicator
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

now that i'm looking at this file we should combine all these into a single pytest command - starting up sentry and collecting tests has nontrivial costs - we're probably leaving ~15-30s on the table here and we also have an optimization on --reuse-db in ci but it assumes only one pytest call per run

i'll commit that here and ensure the tests collected are the same

…est command

Make requires_symbolicator imply pytest.mark.symbolicator so the marker
is applied automatically wherever the fixture is used. This allows the
Makefile test-symbolicator target to use a single pytest invocation with
-m symbolicator instead of four separate commands. Remove now-redundant
@pytest.mark.symbolicator decorators from all test files.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown
Contributor

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Comment thread src/sentry/testutils/skips.py Outdated
The previous approach of nesting marks via
`pytest.mark.symbolicator(pytest.mark.usefixtures(...))` doesn't work —
pytest stores the inner mark as a positional arg rather than applying it
as a separate mark, silently losing the fixture availability check.

Instead, add a pytest_collection_modifyitems hook that automatically
adds the `symbolicator` marker to any test using the
`_requires_symbolicator` fixture.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@Dav1dde Dav1dde merged commit 2452d2f into master Mar 11, 2026
78 checks passed
@Dav1dde Dav1dde deleted the dav1d/test-run-symbolicator-tests branch March 11, 2026 08:02
@github-actions github-actions Bot locked and limited conversation to collaborators Mar 26, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Scope: Backend Automatically applied to PRs that change backend components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants