Test Name:Espresso - PO - single test, core output structure
Feature:Espresso Analysis
Traceability:@SHIFT-17
Description:Verifies that a Product Owner uploading a single Espresso test file receives structured JSON documentation with at least one named test and no missing or unresolved data.
This Test Verifies:
Verification Step
What It Checks
Documentation appears in the output panel
The analysis produces visible output after submission
JSON output has no unresolved values
All fields in the output are fully populated with no placeholders or blanks
JSON framework is 'espresso'
The output is correctly tagged as belonging to the Espresso test framework
JSON has 1 or more tests
At least one test case is detected and documented from the uploaded file
Every test has a non-empty 'test_name'
Each documented test case is identifiable by name
Test Name:Espresso - PO - Parameterized data-driven expands one test per row
Feature:Espresso Analysis
Traceability:@SHIFT-19
Description:Verifies that a Product Owner uploading a data-driven Espresso test file sees the parameterized test expanded into one documented test entry per data row, resulting in three or more tests.
This Test Verifies:
Verification Step
What It Checks
Documentation appears in the output panel
The analysis produces visible output after submission
JSON output has no unresolved values
All fields in the output are fully populated with no placeholders or blanks
JSON framework is 'espresso'
The output is correctly tagged as belonging to the Espresso test framework
JSON has 3 or more tests
Data-driven tests are expanded so each parameter row becomes a separate documented test case
Every test has a non-empty 'test_name'
Each expanded test case variant is identifiable by name
Test Name:Espresso - QAM - single test, coverage matrix populated
Feature:Espresso Analysis
Traceability:@SHIFT-18
Description:Verifies that a QA Manager uploading a single Espresso test file receives documentation that includes a populated test coverage matrix alongside standard test name output.
This Test Verifies:
Verification Step
What It Checks
Documentation appears in the output panel
The analysis produces visible output after submission
JSON output has no unresolved values
All fields in the output are fully populated with no placeholders or blanks
JSON framework is 'espresso'
The output is correctly tagged as belonging to the Espresso test framework
JSON has 1 or more tests
At least one test case is detected and documented from the uploaded file
Every test has a non-empty 'test_name'
Each documented test case is identifiable by name
The first test has a non-empty array 'test_coverage_matrix'
The QA Manager role triggers generation of a coverage matrix, which is present and contains entries
Test Name:Espresso - QAM - data-driven collapses
Feature:Espresso Analysis
Traceability:@SHIFT-20
Description:Verifies that a QA Manager uploading a data-driven Espresso test file sees the parameterized test collapsed into a single documented entry whose coverage matrix rows reflect each data example using the correct schema.
This Test Verifies:
Verification Step
What It Checks
Documentation appears in the output panel
The analysis produces visible output after submission
JSON output has no unresolved values
All fields in the output are fully populated with no placeholders or blanks
JSON framework is 'espresso'
The output is correctly tagged as belonging to the Espresso test framework
JSON has exactly 1 test
Data-driven tests are collapsed into a single entry for the QA Manager role, rather than expanded
Every test has a non-empty 'test_name'
The collapsed test case is identifiable by name
Coverage matrix row count matches the examples
Each data row from the parameterized test is represented as a separate row in the coverage matrix
Coverage matrix rows use the correct schema for 'espresso'
The structure of each coverage matrix row conforms to the expected Espresso-specific format
Test Name:Espresso - PO - single test, core output structure
Feature:Espresso Analysis
Traceability:@SHIFT-17
Journey:A Product Owner uploads a single Espresso test fixture and verifies that the analysis produces valid, framework-tagged JSON output containing at least one named test.
Scenario
Given Context
When Action
Then Assertion
Gherkin Type
Espresso - PO - single test, core output structure
User is on the Analyze page
Selects format 'espresso' and role 'Product Owner', uploads 'espresso_single_sample.java', and clicks 'Document test cases'
Output panel is populated; downloaded JSON has no unresolved values, framework is 'espresso', contains 1 or more tests, and every test has a non-empty test_name
Positive
Test Name:Espresso - PO - Parameterized data-driven expands one test per row
Feature:Espresso Analysis
Traceability:@SHIFT-19
Journey:A Product Owner uploads a data-driven Espresso fixture and verifies that each parameterized row is expanded into its own test entry in the JSON output.
Scenario
Given Context
When Action
Then Assertion
Gherkin Type
Espresso - PO - Parameterized data-driven expands one test per row
User is on the Analyze page
Selects format 'espresso' and role 'Product Owner', uploads 'espresso_datadriven_sample.java', and clicks 'Document test cases'
Output panel is populated; downloaded JSON has no unresolved values, framework is 'espresso', contains 3 or more tests (one per data row), and every test has a non-empty test_name
Positive
Test Name:Espresso - QAM - single test, coverage matrix populated
Feature:Espresso Analysis
Traceability:@SHIFT-18
Journey:A QA Manager uploads a single Espresso test fixture and verifies that the JSON output includes a populated test_coverage_matrix on the first test.
Scenario
Given Context
When Action
Then Assertion
Gherkin Type
Espresso - QAM - single test, coverage matrix populated
User is on the Analyze page
Selects format 'espresso' and role 'QA Manager', uploads 'espresso_single_sample.java', and clicks 'Document test cases'
Output panel is populated; downloaded JSON has no unresolved values, framework is 'espresso', contains 1 or more tests, every test has a non-empty test_name, and the first test has a non-empty test_coverage_matrix array
Positive
Test Name:Espresso - QAM - data-driven collapses
Feature:Espresso Analysis
Traceability:@SHIFT-20
Journey:A QA Manager uploads a data-driven Espresso fixture and verifies that the output collapses all rows into exactly one test entry whose coverage matrix rows match the example count and conform to the Espresso schema.
Scenario
Given Context
When Action
Then Assertion
Gherkin Type
Espresso - QAM - data-driven collapses
User is on the Analyze page
Selects format 'espresso' and role 'QA Manager', uploads 'espresso_datadriven_sample.java', and clicks 'Document test cases'
Output panel is populated; downloaded JSON has no unresolved values, framework is 'espresso', contains exactly 1 test, every test has a non-empty test_name, coverage matrix row count matches the data-driven examples, and rows conform to the Espresso schema