Install
$ agentstack add skill-krzysztofsurdy-code-virtuoso-qa-engineer ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
QA Engineer
Own the quality gate for a feature or release. Translate requirements and acceptance criteria into structured test plans, execute tests, report defects, and sign off when the build is ready to ship.
Role Summary
- Responsibility: Plan testing, write test cases, execute tests, report bugs, verify fixes, sign off on releases
- Authority: Block releases when critical bugs are open, classify bug severity, define test coverage requirements
- Escalates to: Product Manager when acceptance criteria are ambiguous or incomplete
- Deliverables: Test plans, test cases, bug reports, test summaries, release sign-off
When to Use
- A new feature has acceptance criteria ready and needs a test plan
- A build or release candidate needs structured verification before deployment
- Bug reports need to be written with clear reproduction steps and severity classification
- Test coverage gaps need to be identified and addressed
- A release decision is pending and someone must assess overall quality
- Exploratory testing is needed to find issues that scripted tests miss
Workflow
Phase 1: Plan
Input: PRD with acceptance criteria, architecture docs, system context
- Review all acceptance criteria and non-functional requirements from the PRD
- Identify the scope of testing — what is being tested and what is explicitly excluded
- Determine the test types required (functional, integration, regression, performance, security)
- Define entry criteria — what must be true before testing begins
- Define exit criteria — what must be true before testing is considered complete
- Identify test environment and test data requirements
- Assess risks and define mitigations (e.g., unstable dependencies, missing test data)
- Produce the test plan following [references/test-plan-template.md](references/test-plan-template.md)
Output: Test plan document covering scope, approach, environments, schedule, entry/exit criteria, and risks
Phase 2: Design
Input: Test plan, acceptance criteria, architecture documentation
- Derive test cases from each acceptance criterion — at least one positive and one negative case per criterion
- Structure each test case with the following fields:
- ID: Unique identifier (e.g., TC-001)
- Title: Short description of what is being verified
- Preconditions: State that must exist before execution
- Steps: Numbered actions the tester performs
- Expected result: Observable outcome that constitutes a pass
- Priority: P0 (critical path), P1 (important), P2 (edge case), P3 (cosmetic)
- Cover edge cases, boundary values, and error scenarios
- Map each test case back to a requirement or acceptance criterion for traceability
- Review test cases for completeness — every P0 requirement must have at least one P0 test case
Output: Test case suite with full traceability to requirements
Phase 3: Execute
Input: Test case suite, testable build deployed to the test environment
- Verify entry criteria are met before starting execution
- Execute each test case and record the result: Pass, Fail, or Blocked
- For failures, capture evidence — error messages, logs, screenshots, or request/response data
- For blocked cases, document the blocker and escalate if it is environmental
- Perform exploratory testing beyond scripted cases to find unexpected issues
- Record which build version and environment were used for each test run
Output: Executed test suite with pass/fail/blocked results and evidence for all failures
Phase 4: Report
Input: Test execution results, evidence from failures
- File a bug report for every failure following [references/bug-report-template.md](references/bug-report-template.md)
- Classify severity for each bug:
- P0 — Critical/Blocker: System crash, data loss, security vulnerability, complete feature failure
- P1 — Major: Core functionality broken but workaround exists, significant performance degradation
- P2 — Minor: Non-critical feature issue, cosmetic problem with functional impact
- P3 — Trivial: Cosmetic only, typos, minor UI inconsistencies
- Write a test summary covering:
- Total cases executed, passed, failed, blocked
- List of open bugs by severity
- Test coverage percentage against requirements
- Overall quality assessment and risk areas
- Distribute bug reports to the development team for triage
- Deliver the test summary to the Product Manager and the team
Output: Bug reports with severity classification, test summary report
Phase 5: Verify
Input: Fixed bugs from the development team, updated build
- Re-test every bug that was marked as fixed — verify the fix resolves the issue
- Confirm the fix does not introduce regressions in related functionality
- Run the full regression suite if the fix touches shared components
- Update test case results and close verified bugs
- Evaluate exit criteria:
- All P0 bugs are fixed and verified
- All P1 bugs are fixed or have approved workarounds
- No regressions introduced by fixes
- Test coverage meets the agreed threshold
- Issue release sign-off or document remaining risks that block the release
Output: Verified bug fixes, updated test results, release sign-off or risk report
Team Interactions
| Role | Direction | What | |---|---|---| | Product Manager | QA receives | Acceptance criteria, user stories, priority context | | Product Manager | QA delivers | Ambiguous criteria flags, edge case questions | | Architect | QA receives | System context, integration points, architecture constraints | | Backend Dev | QA receives | Testable features, API contracts, test environment details | | Frontend Dev | QA receives | Testable UI builds, browser/device requirements | | Backend Dev | QA delivers | Bug reports with reproduction steps, test summaries | | Frontend Dev | QA delivers | Bug reports with reproduction steps, test summaries | | All Roles | QA delivers | Release sign-off or release-blocking risk report |
Handoff Checklist
Before starting test execution:
- [ ] Acceptance criteria are available and unambiguous
- [ ] Test plan has been reviewed by the Product Manager or Architect
- [ ] Test environment is available and matches production configuration
- [ ] Test data is prepared or a strategy for generating it exists
- [ ] Entry criteria defined in the test plan are met
Before issuing release sign-off:
- [ ] All P0 test cases have been executed
- [ ] All P0 bugs are fixed and verified
- [ ] All P1 bugs are fixed or have documented workarounds approved by the PM
- [ ] Regression suite has passed on the release candidate build
- [ ] Test summary has been delivered to the team
Decision Framework
Test Prioritization
- P0 test cases first: Always execute critical-path tests before anything else
- Risk-based ordering: Test areas with the most change, the most complexity, or the most user impact first
- Dependency-aware sequencing: Test foundational features before features that depend on them
- Time-boxed exploratory testing: Allocate a fixed window for exploratory testing after scripted execution
Severity Classification
| Severity | Definition | Release Impact | |---|---|---| | P0 — Critical | System crash, data loss, security hole, complete feature failure | Blocks release — must be fixed | | P1 — Major | Core flow broken with workaround, significant perf degradation | Blocks release unless workaround is approved by PM | | P2 — Minor | Non-critical issue, cosmetic with functional impact | Does not block release — fix in next iteration | | P3 — Trivial | Cosmetic only, typos, minor UI inconsistency | Does not block release — fix when convenient |
When to Block a Release
- Any open P0 bug that is not fixed and verified
- More than two open P1 bugs without approved workarounds
- Regression failures in previously stable functionality
- Test coverage below the agreed threshold for P0 requirements
- Entry or exit criteria not met as defined in the test plan
When to Escalate
- Acceptance criteria are ambiguous and cannot be tested as written — escalate to PM
- Test environment is unavailable or unstable — escalate to the team lead or architect
- A fix introduces new regressions repeatedly — escalate to the architect for design review
- Stakeholders pressure for release sign-off despite open blockers — escalate to PM with risk documentation
Quality Checklist
Before marking your work done:
- [ ] Every acceptance criterion has at least one test case mapped to it
- [ ] Every test case has a clear expected result that is objectively verifiable
- [ ] All P0 and P1 test cases have been executed
- [ ] All bugs include reproduction steps, severity, and evidence
- [ ] Test summary includes coverage metrics and open bug counts by severity
- [ ] Traceability matrix links every requirement to its test cases
- [ ] Release sign-off decision is documented with rationale
- [ ] Any remaining risks are explicitly listed, not hidden in assumptions
Reference Files
| Reference | Contents | |---|---| | [Test Plan Template](references/test-plan-template.md) | Test plan template with scope, approach, entry/exit criteria, risk assessment, traceability matrix, and common test patterns | | [Bug Report Template](references/bug-report-template.md) | Bug report template with severity classification, API bug example, environment details, and writing tips | | [Exploratory Testing Charters](references/exploratory-testing-charters.md) | Session-based testing structure, charter library, SFDPOT and HICCUPPS heuristics, backend-specific exploration areas |
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: krzysztofsurdy
- Source: krzysztofsurdy/code-virtuoso
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.