Test Name:TestNG - PO - single test, core output structure
Feature:TestNG Analysis
User Role:Product Owner
Traceability:@SHIFT-17
Description:Verifies that uploading a single TestNG test file and documenting it produces valid, complete JSON output with at least one named test.
This Test Verifies:
Verification Step
What It Checks
Documentation appears in output panel
The system responds with visible documentation after processing the file
JSON output has no unresolved values
All fields in the output are fully resolved with no placeholders or missing data
JSON has 1 or more tests
At least one test entry is present in the output
Every test has a non-empty test_name
Each documented test is identifiable by a name
Test Name:TestNG - PO - DataProvider expands one test per row
Feature:TestNG Analysis
User Role:Product Owner
Traceability:@SHIFT-19
Description:Verifies that a data-driven TestNG test using a DataProvider is expanded into one separate test entry per data row in the Product Owner output.
This Test Verifies:
Verification Step
What It Checks
Documentation appears in output panel
The system responds with visible documentation after processing the file
JSON output has no unresolved values
All fields in the output are fully resolved with no placeholders or missing data
JSON has 3 or more tests
The DataProvider rows are each expanded into individual test entries, producing multiple results
Every test has a non-empty test_name
Each expanded test entry is identifiable by a name
Test Name:TestNG - QAM - single test, coverage matrix populated
Feature:TestNG Analysis
User Role:QA Manager
Traceability:@SHIFT-18
Description:Verifies that uploading a single TestNG test file in the QA Manager role produces valid output that includes a populated test coverage matrix.
This Test Verifies:
Verification Step
What It Checks
Documentation appears in output panel
The system responds with visible documentation after processing the file
JSON output has no unresolved values
All fields in the output are fully resolved with no placeholders or missing data
JSON has 1 or more tests
At least one test entry is present in the output
Every test has a non-empty test_name
Each documented test is identifiable by a name
First test has a non-empty test_coverage_matrix array
The QA Manager view includes a populated coverage matrix for the test
Test Name:TestNG - QAM - DataProvider collapses
Feature:TestNG Analysis
User Role:QA Manager
Traceability:@SHIFT-20
Description:Verifies that a data-driven TestNG test is collapsed into a single test entry in the QA Manager view, with the coverage matrix reflecting all data rows using the correct schema.
This Test Verifies:
Verification Step
What It Checks
Documentation appears in output panel
The system responds with visible documentation after processing the file
JSON output has no unresolved values
All fields in the output are fully resolved with no placeholders or missing data
JSON has exactly 1 test
The data-driven test is collapsed into a single entry rather than expanded per row
Every test has a non-empty test_name
The collapsed test entry is identifiable by a name
Coverage matrix row count matches the examples
Each data row from the DataProvider is represented as a row in the coverage matrix
Coverage matrix rows use the correct schema for generic
The structure of each coverage matrix row conforms to the expected generic schema
Test Name:TestNG - PO - single test, core output structure
Feature:TestNG Analysis
Traceability:@SHIFT-17
Journey:A Product Owner uploads a single TestNG test fixture and verifies that the analysis produces valid, fully-resolved JSON output containing at least one named test.
Scenario
Given Context
When Action
Then Assertion
Gherkin Type
TestNG - PO - single test, core output structure
User is on the Analyze page
Selects format 'testng' and role 'Product Owner', uploads 'testng_single_sample.java', and clicks 'Document test cases'
Output panel shows documentation; downloaded JSON has no unresolved values, contains 1 or more tests, and every test has a non-empty test_name
Positive
Test Name:TestNG - PO - DataProvider expands one test per row
Feature:TestNG Analysis
Traceability:@SHIFT-19
Journey:A Product Owner uploads a data-driven TestNG fixture and verifies that the DataProvider causes each data row to be expanded into its own named test entry in the JSON output.
Scenario
Given Context
When Action
Then Assertion
Gherkin Type
TestNG - PO - DataProvider expands one test per row
User is on the Analyze page
Selects format 'testng' and role 'Product Owner', uploads 'testng_datadriven_sample.java', and clicks 'Document test cases'
Output panel shows documentation; downloaded JSON has no unresolved values, contains 3 or more tests (one per DataProvider row), and every test has a non-empty test_name
Positive
Test Name:TestNG - QAM - single test, coverage matrix populated
Feature:TestNG Analysis
Traceability:@SHIFT-18
Journey:A QA Manager uploads a single TestNG test fixture and verifies that the analysis produces valid JSON output where the first test includes a populated coverage matrix.
Scenario
Given Context
When Action
Then Assertion
Gherkin Type
TestNG - QAM - single test, coverage matrix populated
User is on the Analyze page
Selects format 'testng' and role 'QA Manager', uploads 'testng_single_sample.java', and clicks 'Document test cases'
Output panel shows documentation; downloaded JSON has no unresolved values, contains 1 or more tests with non-empty test_name, and the first test has a non-empty test_coverage_matrix array
Positive
Test Name:TestNG - QAM - DataProvider collapses
Feature:TestNG Analysis
Traceability:@SHIFT-20
Journey:A QA Manager uploads a data-driven TestNG fixture and verifies that the DataProvider rows collapse into a single test entry whose coverage matrix rows match the data set and conform to the generic schema.
Scenario
Given Context
When Action
Then Assertion
Gherkin Type
TestNG - QAM - DataProvider collapses
User is on the Analyze page
Selects format 'testng' and role 'QA Manager', uploads 'testng_datadriven_sample.java', and clicks 'Document test cases'
Output panel shows documentation; downloaded JSON has no unresolved values, contains exactly 1 test with a non-empty test_name; coverage matrix row count matches the DataProvider examples and rows conform to the generic schema