77 lines
3.4 KiB
Gherkin
77 lines
3.4 KiB
Gherkin
Feature: Report browsing
|
|
As a developer
|
|
I want to browse test reports and build history in a web browser
|
|
So that I can review test results, compare builds, and navigate between reports
|
|
|
|
Background:
|
|
Given a project has completed at least one build
|
|
And the build reports are accessible through the report storage
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Ticket 0003: push-reports.sh — Pushing test reports to storage
|
|
# ---------------------------------------------------------------------------
|
|
|
|
@ticket-0003 @mock @wip @real
|
|
Scenario: Push Cucumber test report after a successful test run
|
|
When a test run produces a Cucumber report
|
|
Then the report is stored and accessible at a permanent web address
|
|
|
|
@ticket-0003 @mock @wip @real
|
|
Scenario: Push code coverage report after analysis
|
|
When a build generates a code coverage report
|
|
Then the coverage report is stored and accessible at a permanent web address
|
|
|
|
@ticket-0003 @mock @wip @real
|
|
Scenario Outline: Push different types of test artifacts
|
|
When a build produces a "<report_type>" report
|
|
Then the report is stored under its own section in the build's report listing
|
|
|
|
Examples:
|
|
| report_type |
|
|
| Cucumber |
|
|
| JaCoCo |
|
|
| JUnit |
|
|
| Maven Site |
|
|
|
|
@ticket-0003 @mock @wip @real
|
|
Scenario: Report push updates the build report index
|
|
When a report is pushed to storage
|
|
Then the build's report listing includes a link to the new report with its display name
|
|
|
|
@ticket-0003 @mock @wip
|
|
Scenario: Report push fails when the source report directory does not exist
|
|
When a build tries to push a report but the report directory is missing
|
|
Then the pipeline fails with a clear error
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Ticket 0005: report-service/ — HTML index generation for report browsing
|
|
# ---------------------------------------------------------------------------
|
|
|
|
@ticket-0005 @mock @wip @real
|
|
Scenario: Developer sees a list of all builds for a project
|
|
When a developer opens the project build history page
|
|
Then all builds are listed in chronological order with the newest first
|
|
And each build shows its short commit identifier, date, branch, and status
|
|
|
|
@ticket-0005 @mock @wip @real
|
|
Scenario: Developer navigates into a specific build to see its reports
|
|
When a developer clicks on a build in the project build history
|
|
Then a page opens showing all reports available for that build as clickable links
|
|
|
|
@ticket-0005 @mock @wip @real
|
|
Scenario: Build listing shows success or failure status with a clear indicator
|
|
When a build has completed
|
|
Then the build listing shows a success indicator for passing builds
|
|
And a failure indicator for failing builds
|
|
|
|
@ticket-0005 @mock @wip @real
|
|
Scenario: Developer can navigate back from a build report listing to the project build history
|
|
When a developer is viewing the reports of a specific build
|
|
Then a navigation link leads back to the project build history page
|
|
|
|
@ticket-0005 @mock @wip @real
|
|
Scenario: Developer opens two builds side by side to compare reports
|
|
When a developer views two different builds in separate browser tabs
|
|
Then both builds show their respective report listings
|
|
And the developer can compare which tests passed or failed between the builds
|