Software Test Plan and Coverage Analysis
6 weeks · 0 milestones
Produce a software test plan and coverage analysis for a real software system (your own or an open-source system). The test plan must include: a testing scope statement identifying what is in and out of scope with rationale, a test strategy for at least 3 test levels (unit, integration, system), documented test cases for at least 20 representative scenarios with expected results, risk-based test prioritisation explaining why higher-risk areas receive more coverage, and a coverage analysis showing which code paths, branches, or requirements are covered by the documented tests. Tools: pytest-cov, coverage.py, JaCoCo, or equivalent (all free). Proof artifacts: the test plan document (design artifact) and the coverage report with gap analysis (analysis artifact). Accessible: all coverage measurement tools are free and open-source. Verification: a software engineer reviews the coverage gap analysis — 'these untested paths represent what risk?' — and the test case rationale for at least 5 cases.
Milestone map
Milestone map
3 milestones
Select a real or realistic software system, embedded system, or hardware assembly for which you will write a test plan. Define the system under test (SUT): its purpose, key functional requirements (from a requirements specification or user stories), and non-functional requirements to be tested (performance, security, reliability). Identify the testing levels to be covered (unit, integration, system, acceptance) and the testing types within scope (functional, regression, performance, security, usability, or equivalent). State what is explicitly out of scope and why — a test plan with no scope boundaries is not a test plan.
Proof required
Submit your system under test definition (≥500 words): SUT description, ≥8 functional requirements or user stories to be tested, ≥2 non-functional requirements, testing levels in scope, and a clear statement of what is out of scope with justification.
What gets checked
- ≥8 functional requirements or user stories are identified as test targets — not 'all features'
- ≥2 non-functional requirements are included as test targets — not just functional testing
- Out-of-scope items are explicitly listed with justification — not just omitted