For QA and test teams
Crash and API monitoring for QA teams
Every crash from your test run, with the steps that caused it. Hand developers a bug they can reproduce, without writing the report by hand.
Plans: Crash reporting, the test environment and comments on every plan · journey and tickets on Growth and above · See pricing
- ScreenCartActivity
- Eventcheckout_started
- API call failedPOST /v1/orders · 502
- CrashNullPointerException in CheckoutActivity
"Can't reproduce" is where bugs go to wait
Research on real bug trackers shows how often a report stalls because the developer can't make it happen, and what they need to get it moving.
17%
of bug reports were resolved as non-reproducible, across 188,319 reports in six bug repositories.
Source: Joorabchi, Mirzaaghaei & Mesbah, MSR 2014~3 months
longer open, on average, for non-reproducible reports than for bug reports with other resolutions.
Source: Joorabchi, Mirzaaghaei & Mesbah, MSR 2014Steps + trace
Developers at Apache, Eclipse and Mozilla rated steps to reproduce the most useful part of a bug report, followed by stack traces and test cases.
Source: Zimmermann et al., IEEE TSE 2010
Codeskop attaches both for you: the stack trace on every crash, on every plan, and the screens, events and API calls that came before it on Growth and above.
What you get
- Test traffic kept apartGive test builds and CI a test key (cs_test_pk_…). Their crashes land in the test environment, never mix with real users, and never count toward your quota.Every plan
- Every crash, with its stack traceCrashes, native crashes and handled errors from Android, Flutter and web builds, with the device, OS, app version and build.Every plan
- The steps that caused itThe user journey shows the screens, events and failed API calls before the crash, in order. Identify testers with their own ID to find their session.Growth and above
- Failed API calls and ANRsThe 500s, timeouts and slow endpoints your test run hit, and Android freezes, next to the crashes they caused.Starter and above
- @mention the developerComment on the issue with what you saw and @mention the developer. They get a bell notification and an email that opens the issue at your comment.Every plan
- A ticket that writes itselfCreate a Jira, Linear, GitHub Issues, Asana or ClickUp ticket with just a title. It carries the stack trace, the devices and what the user did first.Growth and above
Workflow
From the test run to a ticket a developer can act on
Four steps, all on the same issue, so nothing gets retyped and nothing gets lost in a chat thread.
- 1
Run your tests on a test build
Builds with a test key report to the test environment. Alert rules can watch it too (email on every plan, Slack and more from Starter), so a new crash in the nightly run reaches your team.
Every plan - 2
The crash arrives as an issue, with its journey
Grouped with every other occurrence, with the stack trace and device. On Growth and above, the journey shows the screens, events and API calls that led there.
Growth and above - 3
Comment and @mention the developer
Add what you expected and what happened, @mention whoever owns the screen, and assign it. The activity timeline keeps the history.
Every plan - 4
Create the ticket
One click files it in your task manager with the evidence attached, and the issue links to the ticket so nobody files it twice.
Growth and above
Frequently asked questions
Does test traffic count toward our event quota?
No. Events sent with a test key (cs_test_pk_…) go to the test environment, which is free and never counted, on every plan.
Can Codeskop show the steps to reproduce a crash?
On Growth and above, yes: the user journey lists the crashes, errors and failed API calls before the crash, in order, plus the screens and events when product analytics is on, and tickets include them. Screens are recorded automatically on web, for Android Activities and for named Flutter routes.
Is this session replay?
No. Codeskop doesn't record video, screenshots or taps. The journey is a timeline built from the events the SDK already sends, each linking to the issue.
Is Codeskop a test management tool?
No. It doesn't manage test cases, plans or runs. Use it alongside your test management tool to capture the crashes, errors and failed API calls your tests trigger, with the context a developer needs.
How do I find one tester's session?
Call identify with the tester's own ID in your test builds. Then search for that ID in the Users tab to open their latest session (Growth and above).
Is there a view made for QA?
Yes. Choose QA / Test when you sign up or accept an invite, and Codeskop first opens on the issues in your test environment. It's a starting point, not a permission: every team member sees the same issues.
Which plan does a QA team need?
Crash reporting, the test environment and comments with @mentions are on every plan, including Free (up to 5 team members). Free also has email alerts; Starter adds network capture, ANRs and Slack, WhatsApp and webhook alerts. The user journey and tickets are Growth and above.
Know what broke. Fix it faster.
Bring your whole team into the same issues.
Set up in minutes. Free plan for up to 5 team members, no credit card required.