Skip to content
Novus Examples

Testing & QA

Test tooling spends most of its life reading other tools' output, and that output is exactly what nobody publishes a sample of. This category ships the report formats a CI dashboard, a coverage gate, or a flaky-test detector has to parse: JUnit and NUnit XML, MSTest TRX, TAP streams, Cucumber and Playwright JSON, Gherkin feature files, and Robot Framework suites. Coverage arrives as Cobertura, JaCoCo and Clover XML alongside LCOV tracefiles and Istanbul JSON, with matching totals across formats so a converter can be diffed against a known answer. Performance and network fixtures round it out — HAR captures, load-test summaries, and timing tables. Passing, failing, skipped, and intentionally malformed reports are all labelled, so a parser can be held to the difference.

Filter testing & qa on Browse · 142 files · 10 subcategories

142 of 142 files

Bdd

Preview of Cucumber JSON — Failing Step with Stack Trace
json
15.2 KB
Actual file preview for Cucumber JSON — Failing Step with Stack Trace

Cucumber JSON — Failing Step with Stack Trace

One step of one scenario fails with an assertion message and a stack frame; every other step passes. In cucumber.json a scenario has no status of its own — it is failed if any of its steps is — so this file catches reporters that look for a scenario-level field that does not exist.

File
JSON · Bdd · UTF-8
Use case
JSON parsingError handling+1· Conversion set
Preview of Cucumber JSON — Passing Checkout Report
json
15.1 KB
Actual file preview for Cucumber JSON — Passing Checkout Report

Cucumber JSON — Passing Checkout Report

The legacy cucumber.json report for the same run — the format nearly every BDD dashboard still ingests. Durations are in nanoseconds here and in a nested {seconds, nanos} object in the messages twin, which is the single most common unit bug when converting between the two.

File
JSON · Bdd · UTF-8
Use case
JSON parsingConversion testing+1· Conversion set
Preview of Cucumber JSON — Undefined, Pending and Skipped Steps
json
14.9 KB
Actual file preview for Cucumber JSON — Undefined, Pending and Skipped Steps

Cucumber JSON — Undefined, Pending and Skipped Steps

The three non-failure statuses BDD runners produce and dashboards routinely collapse into "failed": undefined (no step definition matched), pending (explicitly unimplemented) and skipped (never attempted). Whether the run is red depends on the runner's strict setting, which is exactly the decision this file forces.

File
JSON · Bdd · UTF-8
Use case
JSON parsingError handling+1· Conversion set
Preview of Cucumber JUnit XML — Checkout Run
xml
823 B
Actual file preview for Cucumber JUnit XML — Checkout Run

Cucumber JUnit XML — Checkout Run

The same six pickles reported as JUnit XML, which is what a BDD suite hands to a generic CI dashboard. One <testcase> per pickle means the three expanded outline rows appear as three tests with identical names — enough to break any store keyed on name alone.

File
XML · Bdd · UTF-8
Use case
Conversion testingLog parsing+1· Conversion set
Preview of Cucumber Messages — Failing Run (NDJSON)
ndjson
27.5 KB
Actual file preview for Cucumber Messages — Failing Run (NDJSON)

Cucumber Messages — Failing Run (NDJSON)

The messages twin of the failing run: one testStepFinished carries status FAILED with both a human message and a structured exception object, and testRunFinished reports success false. Comparing it with the passing stream in the other group isolates exactly which envelopes a failure changes.

File
NDJSON · Bdd · UTF-8
Use case
JSON parsingError handling+1· Conversion set
Preview of Cucumber Messages — Passing Checkout Run (NDJSON)
ndjson
27.3 KB
Actual file preview for Cucumber Messages — Passing Checkout Run (NDJSON)

Cucumber Messages — Passing Checkout Run (NDJSON)

The machine twin of checkout.feature: the cucumber-messages envelope stream a runner emits, with meta, source, gherkinDocument, one pickle per expanded scenario, and paired testStepStarted/testStepFinished envelopes carrying nanosecond durations. Written as NDJSON because that is the format's actual wire shape — one envelope per line, not a JSON array.

File
NDJSON · Bdd · UTF-8
Use case
JSON parsingConversion testing+1· Conversion set
Preview of Gherkin — Background, Feature Tags and Hooks
feature
718 B
Actual file preview for Gherkin — Background, Feature Tags and Hooks

Gherkin — Background, Feature Tags and Hooks

A named Background whose two steps are prepended to all three scenarios, plus feature-level tags that every scenario inherits and scenario-level tags that only some carry. Tag filtering is where this file earns its keep: @slow selects one scenario by its own tag and all three by inheritance from the feature.

File
FEATURE · Bdd · UTF-8
Use case
Code parsingConversion testing+1· Conversion set
Preview of Gherkin — Checkout Feature (Background, Outline, Doc String)
feature
1.4 KB
Actual file preview for Gherkin — Checkout Feature (Background, Outline, Doc String)

Gherkin — Checkout Feature (Background, Outline, Doc String)

The source feature for this whole group: a Background with a data table, a plain scenario, a Scenario Outline expanded by two Examples tables, and a scenario asserting against a doc string. It compiles to exactly six pickles and 32 pickle steps — the numbers the cucumber-messages and cucumber.json twins next to it report.

File
FEATURE · Bdd · UTF-8
Use case
Code parsingConversion testing+1· Conversion set
Preview of Gherkin — Data Table and Doc String Arguments
feature
607 B
Actual file preview for Gherkin — Data Table and Doc String Arguments

Gherkin — Data Table and Doc String Arguments

A step argument table with a header row, followed by two doc strings — one plain and one carrying a json content type after the opening delimiter. Doc string indentation is relative to the delimiter, so the receipt body must keep its internal column alignment while losing the six leading spaces.

File
FEATURE · Bdd · UTF-8
Use case
Code parsingConversion testing+1· Conversion set
Preview of Gherkin — French Keywords (# language: fr)
feature
685 B
Actual file preview for Gherkin — French Keywords (# language: fr)

Gherkin — French Keywords (# language: fr)

A feature written entirely in French keywords, declared by the # language: fr header that must be the first line of the file. Parsers that hardcode English keywords read this as a feature with no scenarios rather than reporting an error, so it fails silently.

File
FEATURE · Bdd · fr
Use case
InternationalizationCode parsing+1· Conversion set
Preview of Gherkin — Rule Keyword (Gherkin 6)
feature
722 B
Actual file preview for Gherkin — Rule Keyword (Gherkin 6)

Gherkin — Rule Keyword (Gherkin 6)

Two Rule blocks, the first with its own Background that applies only to the examples inside it. Parsers written before Gherkin 6 either reject Rule outright or, worse, hoist the Background to the whole feature and add a step to the third example that was never there.

File
FEATURE · Bdd · UTF-8
Use case
Code parsingConversion testing+1· Conversion set
Preview of Gherkin — Scenario Outline with Two Examples Tables
feature
579 B
Actual file preview for Gherkin — Scenario Outline with Two Examples Tables

Gherkin — Scenario Outline with Two Examples Tables

One outline expanded by two separate Examples tables, the second of which carries its own @edge tag. Expansion must produce five scenarios, and only the two from the tagged table may match a run filtered on @edge — a distinction parsers that flatten the tables lose.

File
FEATURE · Bdd · UTF-8
Use case
Code parsingConversion testing+1· Conversion set
Preview of Gherkin — Step Argument and Expression Types
feature
624 B
Actual file preview for Gherkin — Step Argument and Expression Types

Gherkin — Step Argument and Expression Types

Steps exercising every argument shape a step-definition matcher has to handle: quoted strings with escaped inner quotes, integers, decimals, a comma-and-and list, the But keyword, and angle brackets in a plain Scenario where they are literal text rather than outline placeholders.

File
FEATURE · Bdd · UTF-8
Use case
Code parsingConversion testing+1· Conversion set

Corrupt

Preview of JUnit XML — Truncated Mid-Element (intentionally corrupt)
xml
449 B
Actual file preview for JUnit XML — Truncated Mid-Element (intentionally corrupt)

JUnit XML — Truncated Mid-Element (intentionally corrupt)

An intentionally corrupt JUnit report: the file ends in the middle of a testcase attribute value, exactly as it would if the CI worker were killed while the reporter was still writing. Three elements are left unclosed and the document is not well-formed XML. A parser must fail loudly rather than report the two complete cases as the whole run.

File
XML · Corrupt
Use case
Error handlingConversion testing+1· Conversion set
Preview of LCOV — Lines Hit Exceeds Lines Found (intentionally corrupt)
lcov
1.5 KB
Actual file preview for LCOV — Lines Hit Exceeds Lines Found (intentionally corrupt)

LCOV — Lines Hit Exceeds Lines Found (intentionally corrupt)

An intentionally corrupt LCOV tracefile: every record declares LH eight greater than LF, so more lines were hit than exist. The syntax is perfectly valid, which is the point — the contradiction is semantic, and a coverage gate that trusts the summary counters computes over 100% coverage and passes a build it should have stopped. Recompute LH from the DA lines and the real figure is 127/140.

File
LCOV · Corrupt · 4 records
Use case
Error handlingConversion testing+1· Conversion set

Coverage

Preview of Coverage — Clover XML
xml
9.4 KB
Actual file preview for Coverage — Clover XML

Coverage — Clover XML

The Clover serialisation, whose <metrics> element rolls statements, conditionals and methods into a single elements/coveredelements pair. Anything reading only that pair reports a blended percentage that matches none of the other three formats unless the components are separated first. Every file in this group describes the same four-file source tree and reports 127/140 lines, 17/24 branch outcomes and 18/20 functions, so a converter can be diffed against a known answer.

File
XML · Coverage
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — Cobertura at Zero Coverage
xml
12.8 KB
Actual file preview for Coverage — Cobertura at Zero Coverage

Coverage — Cobertura at Zero Coverage

A structurally complete Cobertura report in which line-rate and branch-rate are 0.0 everywhere. The counterpart to the zero-coverage LCOV file, for checking that a converter keeps the class and method structure when there is nothing covered to describe.

File
XML · Coverage
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — Cobertura Condition-Coverage Attributes
xml
12.9 KB
Actual file preview for Coverage — Cobertura Condition-Coverage Attributes

Coverage — Cobertura Condition-Coverage Attributes

Cobertura with a condition-coverage attribute on every branching line, written in the "50% (1/2)" form. The percentage and the fraction can disagree in real reports, so a parser should read the fraction and treat the percentage as derived.

File
XML · Coverage
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — Cobertura with One Package per Directory
xml
12.9 KB
Actual file preview for Coverage — Cobertura with One Package per Directory

Coverage — Cobertura with One Package per Directory

The same coverage split into one package per source directory with dotted names, the layout a JVM project produces. Reports that key on class name alone collide as soon as two packages hold a class of the same name, which this file is shaped to expose.

File
XML · Coverage
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — Cobertura with Several Source Roots
xml
13.1 KB
Actual file preview for Coverage — Cobertura with Several Source Roots

Coverage — Cobertura with Several Source Roots

Three <source> roots with class filenames given relative to them, which is how Cobertura represents a multi-root project. A viewer must try each root in turn to resolve a file; one that assumes a single root shows "source not found" for most of the report.

File
XML · Coverage
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — Cobertura XML
xml
12.9 KB
Actual file preview for Coverage — Cobertura XML

Coverage — Cobertura XML

The Cobertura serialisation of the same run, with packages, classes, per-method line rates and condition-coverage attributes on every branching line. Cobertura expresses coverage as rates rather than counts, so this is the file that catches converters rounding a percentage into a hit count. Every file in this group describes the same four-file source tree and reports 127/140 lines, 17/24 branch outcomes and 18/20 functions, so a converter can be diffed against a known answer.

File
XML · Coverage
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — Gate Boundary at 80.00% (meets the gate exactly)
lcov
1.4 KB
Actual file preview for Coverage — Gate Boundary at 80.00% (meets the gate exactly)

Coverage — Gate Boundary at 80.00% (meets the gate exactly)

A tracefile sitting meets the gate exactly against the 80% minimum in this group's gate config: 112 of 140 lines, 80.00%. 80.00% is exactly the configured minimum, so a > comparison fails the build and a >= comparison passes it — the single most common off-by-one in a coverage gate.

File
LCOV · Coverage · 4 records
Use case
Conversion testingConfig testing+1· Conversion set
Preview of Coverage — Gate Configuration (JSON)
json
542 B
Actual file preview for Coverage — Gate Configuration (JSON)

Coverage — Gate Configuration (JSON)

The threshold configuration the three boundary tracefiles in this group are meant to be judged against: global minimums, one per-path override and an explicit >= comparison. Publishing the comparison operator is the point — leaving it implicit is what makes an at-the-gate report ambiguous.

File
JSON · Coverage
Use case
Config parsingJSON parsing+1· Conversion set
Preview of Coverage — Istanbul coverage-final.json
json
43.8 KB
Actual file preview for Coverage — Istanbul coverage-final.json

Coverage — Istanbul coverage-final.json

The raw Istanbul document nyc and Jest write before any reporter runs: statementMap, fnMap and branchMap giving source locations, with the s, f and b objects holding the hit counts. Branch counts here are arrays per branch point, which is why converting to LCOV doubles the branch total if the array is not flattened. Every file in this group describes the same four-file source tree and reports 127/140 lines, 17/24 branch outcomes and 18/20 functions, so a converter can be diffed against a known answer.

File
JSON · Coverage
Use case
JSON parsingConversion testing+1· Conversion set
Preview of Coverage — Istanbul JSON Summary
json
2.3 KB
Actual file preview for Coverage — Istanbul JSON Summary

Coverage — Istanbul JSON Summary

The compact json-summary reporter output: a total block plus one block per file, each with lines, statements, functions and branches as total/covered/skipped/pct. This is what coverage badges and pull-request comments are generated from. Every file in this group describes the same four-file source tree and reports 127/140 lines, 17/24 branch outcomes and 18/20 functions, so a converter can be diffed against a known answer.

File
JSON · Coverage
Use case
JSON parsingConversion testing+1· Conversion set
Preview of Coverage — JaCoCo Method-Level Counters
xml
16 KB
Actual file preview for Coverage — JaCoCo Method-Level Counters

Coverage — JaCoCo Method-Level Counters

Per-method INSTRUCTION, LINE, COMPLEXITY and METHOD counters for all 20 methods, 2 of which were never entered. This is the detail a "which functions are untested" report needs and the level at which most converters stop.

File
XML · Coverage
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — JaCoCo Multi-Module <group>
xml
16.7 KB
Actual file preview for Coverage — JaCoCo Multi-Module <group>

Coverage — JaCoCo Multi-Module <group>

The aggregate form a multi-module build produces: packages nested inside a <group> rather than directly under <report>. Parsers with a hardcoded report/package path find nothing here and report a module with no coverage at all.

File
XML · Coverage
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — JaCoCo with Every Counter Type
xml
16 KB
Actual file preview for Coverage — JaCoCo with Every Counter Type

Coverage — JaCoCo with Every Counter Type

All six JaCoCo counter types present at every level of the document — method, class, sourcefile, package and report. Tools usually read only the report-level LINE counter; this file is for checking that per-method and per-package rollups agree with it.

File
XML · Coverage
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — JaCoCo with Several Session Records
xml
16.2 KB
Actual file preview for Coverage — JaCoCo with Several Session Records

Coverage — JaCoCo with Several Session Records

A report merged from three separate JVM sessions, each recorded as its own <sessioninfo> with start and dump timestamps. The counters are already the merged totals, so summing per-session anything from this file is a mistake it exists to catch.

File
XML · Coverage
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — JaCoCo XML
xml
16 KB
Actual file preview for Coverage — JaCoCo XML

Coverage — JaCoCo XML

The JaCoCo serialisation, which reports missed/covered pairs rather than found/hit and adds INSTRUCTION and COMPLEXITY counters no other format carries. Converters routinely swap missed for covered here, which inverts the whole report. Every file in this group describes the same four-file source tree and reports 127/140 lines, 17/24 branch outcomes and 18/20 functions, so a converter can be diffed against a known answer.

File
XML · Coverage
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — LCOV at 100%
lcov
2.7 KB
Actual file preview for Coverage — LCOV at 100%

Coverage — LCOV at 100%

Every line hit at least once, so LH equals LF exactly. The upper-bound control for a coverage gate, and the case that catches percentage formatting that renders 100% as 100.0% or, worse, rounds 99.95% up to it.

File
LCOV · Coverage · 4 records
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — LCOV at Zero Coverage
lcov
2.6 KB
Actual file preview for Coverage — LCOV at Zero Coverage

Coverage — LCOV at Zero Coverage

Every instrumented line present with a hit count of zero — the shape of a report from a run in which the tests never loaded the instrumented code. It is not an empty file, and conflating the two hides a broken test harness behind a missing-report warning.

File
LCOV · Coverage · 4 records
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — LCOV Tracefile with BRDA Branch Records
lcov
2.7 KB
Actual file preview for Coverage — LCOV Tracefile with BRDA Branch Records

Coverage — LCOV Tracefile with BRDA Branch Records

The reference LCOV tracefile: one record per source file with FN/FNDA function records, real BRDA branch records (block, branch and taken count, with '-' for a branch never reached) and DA line hits, closed by the LF/LH, FNF/FNH and BRF/BRH counters. Every file in this group describes the same four-file source tree and reports 127/140 lines, 17/24 branch outcomes and 18/20 functions, so a converter can be diffed against a known answer.

File
LCOV · Coverage · 4 records
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — LCOV with Function Records Only
lcov
1.1 KB
Actual file preview for Coverage — LCOV with Function Records Only

Coverage — LCOV with Function Records Only

Records containing FN/FNDA/FNF/FNH and nothing else: no DA lines, no LF or LH. Merge tools that assume every record ends with LF/LH either crash here or invent a zero line count for a file that simply was not line-instrumented.

File
LCOV · Coverage · 4 records
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — LCOV with Several TN: Test Names
lcov
2.6 KB
Actual file preview for Coverage — LCOV with Several TN: Test Names

Coverage — LCOV with Several TN: Test Names

Three named test runs in one tracefile, each covering a different part of the tree, reported via the TN: record most tools quietly discard. Keeping the name is what lets a report answer which suite covered a given line.

File
LCOV · Coverage · 4 records
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — LCOV with Two Test Runs Over the Same Files
lcov
3 KB
Actual file preview for Coverage — LCOV with Two Test Runs Over the Same Files

Coverage — LCOV with Two Test Runs Over the Same Files

Two TN: blocks — a unit run and an integration run — each carrying a full record for the same two source files. A correct merge sums the DA hit counts per line and recomputes LH; a tool that keeps the last record seen throws away the unit run entirely.

File
LCOV · Coverage · 4 records
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — LCOV Without Branch Records
lcov
2.3 KB
Actual file preview for Coverage — LCOV Without Branch Records

Coverage — LCOV Without Branch Records

The same tracefile with every BRDA, BRF and BRH line removed — what a runner emits when branch instrumentation is off. A gate that reads branch coverage from this file must report it as unavailable, not as 0%, or an unconfigured project looks like a badly tested one.

File
LCOV · Coverage · 4 records
Use case
Conversion testingCode parsing+1· Conversion set
Preview of Coverage — Markdown Pull-Request Summary
md
794 B
Actual file preview for Coverage — Markdown Pull-Request Summary

Coverage — Markdown Pull-Request Summary

The Markdown comment a coverage bot posts on a pull request: a headline percentage, a per-file table and the uncovered line numbers. Useful for testing Markdown table rendering and for checking that a bot's generated comment matches the machine-readable report it claims to summarise. Every file in this group describes the same four-file source tree and reports 127/140 lines, 17/24 branch outcomes and 18/20 functions, so a converter can be diffed against a known answer.

File
MD · Coverage
Use case
Conversion testingEditor testing+1· Conversion set
Preview of Coverage — Per-File Table (CSV)
csv
337 B
Actual file preview for Coverage — Per-File Table (CSV)

Coverage — Per-File Table (CSV)

The same coverage as a flat table with a TOTAL row, for spreadsheets, trend charts and diffing two runs without an XML parser. The TOTAL row is the arithmetic sum of the four file rows, so it doubles as a checksum on any tool that regenerates it. Every file in this group describes the same four-file source tree and reports 127/140 lines, 17/24 branch outcomes and 18/20 functions, so a converter can be diffed against a known answer.

File
CSV · Coverage · 5 rows
Use case
CSV parsingConversion testing+1· Conversion set

Flaky Runs

Preview of Flaky Detection — 40-Build Test-Run History (JSONL)
jsonl
44.6 KB
Actual file preview for Flaky Detection — 40-Build Test-Run History (JSONL)

Flaky Detection — 40-Build Test-Run History (JSONL)

Forty builds of six tests, one JSON object per line, with three tests that fail intermittently and three that never do. This is the input shape a flake detector ingests; the CSV twin in this group holds the aggregate it should produce.

File
JSONL · Flaky Runs · 240 records
Use case
JSON parsingTime-series data+1· Conversion set
Preview of Flaky Detection — Per-Test Failure-Rate Summary (CSV)
csv
420 B
Actual file preview for Flaky Detection — Per-Test Failure-Rate Summary (CSV)

Flaky Detection — Per-Test Failure-Rate Summary (CSV)

The aggregate answer key for the 40-build history in this group: runs, passes, failures and failure rate per test, with each test labelled stable or flaky. Use it to score a detector rather than eyeballing 240 JSONL records.

File
CSV · Flaky Runs · 6 rows
Use case
CSV parsingConversion testing+1· Conversion set
Preview of Flaky Run — Network Dependency, Build #301 (errored)
xml
1.1 KB
Actual file preview for Flaky Run — Network Dependency, Build #301 (errored)

Flaky Run — Network Dependency, Build #301 (errored)

Build #301 of five consecutive runs of checkout.PaymentTest, in which capturesAuthorisedPayment is errored while the other five cases pass every time. The underlying cause is a real call to the fictional payments host instead of the stub. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Network Dependency, Build #302 (passing)
xml
800 B
Actual file preview for Flaky Run — Network Dependency, Build #302 (passing)

Flaky Run — Network Dependency, Build #302 (passing)

Build #302 of five consecutive runs of checkout.PaymentTest, in which capturesAuthorisedPayment is passing while the other five cases pass every time. The underlying cause is a real call to the fictional payments host instead of the stub. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Network Dependency, Build #303 (passing)
xml
800 B
Actual file preview for Flaky Run — Network Dependency, Build #303 (passing)

Flaky Run — Network Dependency, Build #303 (passing)

Build #303 of five consecutive runs of checkout.PaymentTest, in which capturesAuthorisedPayment is passing while the other five cases pass every time. The underlying cause is a real call to the fictional payments host instead of the stub. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Network Dependency, Build #304 (passing)
xml
800 B
Actual file preview for Flaky Run — Network Dependency, Build #304 (passing)

Flaky Run — Network Dependency, Build #304 (passing)

Build #304 of five consecutive runs of checkout.PaymentTest, in which capturesAuthorisedPayment is passing while the other five cases pass every time. The underlying cause is a real call to the fictional payments host instead of the stub. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Network Dependency, Build #305 (errored)
xml
1.1 KB
Actual file preview for Flaky Run — Network Dependency, Build #305 (errored)

Flaky Run — Network Dependency, Build #305 (errored)

Build #305 of five consecutive runs of checkout.PaymentTest, in which capturesAuthorisedPayment is errored while the other five cases pass every time. The underlying cause is a real call to the fictional payments host instead of the stub. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Network Dependency, Flake-Rate Table (CSV)
csv
457 B
Actual file preview for Flaky Run — Network Dependency, Flake-Rate Table (CSV)

Flaky Run — Network Dependency, Flake-Rate Table (CSV)

The answer key for the network dependency family: the flake rate a detector should derive from the five build reports next to it. Exactly one of the six tests is unstable, at a rate of 2/5; the other five are stable at 0.00.

File
CSV · Flaky Runs · 6 rows
Use case
CSV parsingConversion testing+1· Conversion set
Preview of Flaky Run — Order Dependent, Build #201 (passing)
xml
787 B
Actual file preview for Flaky Run — Order Dependent, Build #201 (passing)

Flaky Run — Order Dependent, Build #201 (passing)

Build #201 of five consecutive runs of cart.DiscountTest, in which stacksDiscountsInDeclaredOrder is passing while the other five cases pass every time. The underlying cause is a shared coupon cache left populated by a sibling test under random ordering. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Order Dependent, Build #202 (failing)
xml
1.1 KB
Actual file preview for Flaky Run — Order Dependent, Build #202 (failing)

Flaky Run — Order Dependent, Build #202 (failing)

Build #202 of five consecutive runs of cart.DiscountTest, in which stacksDiscountsInDeclaredOrder is failing while the other five cases pass every time. The underlying cause is a shared coupon cache left populated by a sibling test under random ordering. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Order Dependent, Build #203 (failing)
xml
1.1 KB
Actual file preview for Flaky Run — Order Dependent, Build #203 (failing)

Flaky Run — Order Dependent, Build #203 (failing)

Build #203 of five consecutive runs of cart.DiscountTest, in which stacksDiscountsInDeclaredOrder is failing while the other five cases pass every time. The underlying cause is a shared coupon cache left populated by a sibling test under random ordering. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Order Dependent, Build #204 (passing)
xml
787 B
Actual file preview for Flaky Run — Order Dependent, Build #204 (passing)

Flaky Run — Order Dependent, Build #204 (passing)

Build #204 of five consecutive runs of cart.DiscountTest, in which stacksDiscountsInDeclaredOrder is passing while the other five cases pass every time. The underlying cause is a shared coupon cache left populated by a sibling test under random ordering. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Order Dependent, Build #205 (passing)
xml
787 B
Actual file preview for Flaky Run — Order Dependent, Build #205 (passing)

Flaky Run — Order Dependent, Build #205 (passing)

Build #205 of five consecutive runs of cart.DiscountTest, in which stacksDiscountsInDeclaredOrder is passing while the other five cases pass every time. The underlying cause is a shared coupon cache left populated by a sibling test under random ordering. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Order Dependent, Flake-Rate Table (CSV)
csv
447 B
Actual file preview for Flaky Run — Order Dependent, Flake-Rate Table (CSV)

Flaky Run — Order Dependent, Flake-Rate Table (CSV)

The answer key for the order dependent family: the flake rate a detector should derive from the five build reports next to it. Exactly one of the six tests is unstable, at a rate of 2/5; the other five are stable at 0.00.

File
CSV · Flaky Runs · 6 rows
Use case
CSV parsingConversion testing+1· Conversion set
Preview of Flaky Run — Quarantined After Two Failures, Build #401 (failing)
xml
992 B
Actual file preview for Flaky Run — Quarantined After Two Failures, Build #401 (failing)

Flaky Run — Quarantined After Two Failures, Build #401 (failing)

Build #401 of five consecutive runs of cart.PricingTest, in which appliesTaxToSubtotal is failing while the other five cases pass every time. The underlying cause is a rounding boundary that only trips when the tax rate table is reloaded. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Quarantined After Two Failures, Build #402 (failing)
xml
992 B
Actual file preview for Flaky Run — Quarantined After Two Failures, Build #402 (failing)

Flaky Run — Quarantined After Two Failures, Build #402 (failing)

Build #402 of five consecutive runs of cart.PricingTest, in which appliesTaxToSubtotal is failing while the other five cases pass every time. The underlying cause is a rounding boundary that only trips when the tax rate table is reloaded. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Quarantined After Two Failures, Build #403 (quarantined)
xml
846 B
Actual file preview for Flaky Run — Quarantined After Two Failures, Build #403 (quarantined)

Flaky Run — Quarantined After Two Failures, Build #403 (quarantined)

Build #403 of five consecutive runs of cart.PricingTest, in which appliesTaxToSubtotal is quarantined while the other five cases pass every time. The underlying cause is a rounding boundary that only trips when the tax rate table is reloaded. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Quarantined After Two Failures, Build #404 (quarantined)
xml
846 B
Actual file preview for Flaky Run — Quarantined After Two Failures, Build #404 (quarantined)

Flaky Run — Quarantined After Two Failures, Build #404 (quarantined)

Build #404 of five consecutive runs of cart.PricingTest, in which appliesTaxToSubtotal is quarantined while the other five cases pass every time. The underlying cause is a rounding boundary that only trips when the tax rate table is reloaded. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Quarantined After Two Failures, Build #405 (quarantined)
xml
846 B
Actual file preview for Flaky Run — Quarantined After Two Failures, Build #405 (quarantined)

Flaky Run — Quarantined After Two Failures, Build #405 (quarantined)

Build #405 of five consecutive runs of cart.PricingTest, in which appliesTaxToSubtotal is quarantined while the other five cases pass every time. The underlying cause is a rounding boundary that only trips when the tax rate table is reloaded. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Quarantined After Two Failures, Flake-Rate Table (CSV)
csv
424 B
Actual file preview for Flaky Run — Quarantined After Two Failures, Flake-Rate Table (CSV)

Flaky Run — Quarantined After Two Failures, Flake-Rate Table (CSV)

The answer key for the quarantined after two failures family: the flake rate a detector should derive from the five build reports next to it. Exactly one of the six tests is unstable, at a rate of 5/5; the other five are stable at 0.00.

File
CSV · Flaky Runs · 6 rows
Use case
CSV parsingConversion testing+1· Conversion set
Preview of Flaky Run — Timing Race, Build #101 (passing)
xml
800 B
Actual file preview for Flaky Run — Timing Race, Build #101 (passing)

Flaky Run — Timing Race, Build #101 (passing)

Build #101 of five consecutive runs of checkout.SessionTest, in which expiresSessionAfterTimeout is passing while the other five cases pass every time. The underlying cause is a 250 ms sleep racing the session expiry sweep. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Timing Race, Build #102 (failing)
xml
1 KB
Actual file preview for Flaky Run — Timing Race, Build #102 (failing)

Flaky Run — Timing Race, Build #102 (failing)

Build #102 of five consecutive runs of checkout.SessionTest, in which expiresSessionAfterTimeout is failing while the other five cases pass every time. The underlying cause is a 250 ms sleep racing the session expiry sweep. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Timing Race, Build #103 (passing)
xml
800 B
Actual file preview for Flaky Run — Timing Race, Build #103 (passing)

Flaky Run — Timing Race, Build #103 (passing)

Build #103 of five consecutive runs of checkout.SessionTest, in which expiresSessionAfterTimeout is passing while the other five cases pass every time. The underlying cause is a 250 ms sleep racing the session expiry sweep. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Timing Race, Build #104 (failing)
xml
1 KB
Actual file preview for Flaky Run — Timing Race, Build #104 (failing)

Flaky Run — Timing Race, Build #104 (failing)

Build #104 of five consecutive runs of checkout.SessionTest, in which expiresSessionAfterTimeout is failing while the other five cases pass every time. The underlying cause is a 250 ms sleep racing the session expiry sweep. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Timing Race, Build #105 (passing)
xml
800 B
Actual file preview for Flaky Run — Timing Race, Build #105 (passing)

Flaky Run — Timing Race, Build #105 (passing)

Build #105 of five consecutive runs of checkout.SessionTest, in which expiresSessionAfterTimeout is passing while the other five cases pass every time. The underlying cause is a 250 ms sleep racing the session expiry sweep. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Timing Race, Flake-Rate Table (CSV)
csv
457 B
Actual file preview for Flaky Run — Timing Race, Flake-Rate Table (CSV)

Flaky Run — Timing Race, Flake-Rate Table (CSV)

The answer key for the timing race family: the flake rate a detector should derive from the five build reports next to it. Exactly one of the six tests is unstable, at a rate of 2/5; the other five are stable at 0.00.

File
CSV · Flaky Runs · 6 rows
Use case
CSV parsingConversion testing+1· Conversion set

Har

Preview of HAR — Base64-Encoded Binary Body
har
2.4 KB
Actual file preview for HAR — Base64-Encoded Binary Body

HAR — Base64-Encoded Binary Body

A PNG response whose body is carried as base64 with content.encoding set accordingly. content.size is the DECODED byte count, not the length of the base64 string, which is the field readers most often get wrong when computing transfer weight.

File
HAR · Har · UTF-8
Use case
API testingPerformance testing+1· Conversion set
Preview of HAR — Cache State Before and After
har
4.7 KB
Actual file preview for HAR — Cache State Before and After

HAR — Cache State Before and After

A conditional request answered 304 with full beforeRequest and afterRequest cache state, next to a first-time fetch whose beforeRequest is null. The null is the documented way to say "not in the cache", and readers that treat it as a missing object rather than an explicit absence lose the distinction.

File
HAR · Har · UTF-8
Use case
API testingPerformance testing+1· Conversion set
Preview of HAR — Compressed Response and Transfer Size
har
2.8 KB
Actual file preview for HAR — Compressed Response and Transfer Size

HAR — Compressed Response and Transfer Size

A gzip-compressed JSON response where content.size is the uncompressed length, bodySize is the bytes on the wire, and content.compression is the saving between them. It also carries the non-standard _transferSize field browsers add, which readers must tolerate rather than reject.

File
HAR · Har · UTF-8
Use case
API testingPerformance testing+1· Conversion set
Preview of HAR — Cookie Set, Sent and Cleared
har
7.6 KB
Actual file preview for HAR — Cookie Set, Sent and Cleared

HAR — Cookie Set, Sent and Cleared

A full session-cookie lifecycle: set at login, echoed on the next request, then expired at logout with Max-Age=0. Both the header and the parsed cookies array are present, and every value — including the form password field — is an obvious SAMPLE placeholder rather than a credential.

File
HAR · Har · UTF-8
Use case
API testingPerformance testing+1· Conversion set
Preview of HAR — HTTP Error Responses (401 to 500)
har
9.6 KB
Actual file preview for HAR — HTTP Error Responses (401 to 500)

HAR — HTTP Error Responses (401 to 500)

Five failing requests covering authentication, authorisation, a missing resource, rate limiting with a Retry-After header, and a server error that returns HTML instead of the JSON the client asked for. The last one is the case that breaks clients which parse by status code rather than by content type.

File
HAR · Har · UTF-8
Use case
API testingPerformance testing+1· Conversion set
Preview of HAR — HTTP/2 Request with Connection Detail
har
2.7 KB
Actual file preview for HAR — HTTP/2 Request with Connection Detail

HAR — HTTP/2 Request with Connection Detail

An HTTP/2 entry with lowercase pseudo-headers, an httpVersion of "h2" rather than "HTTP/2.0", an ssl phase inside connect, and three underscore-prefixed custom fields. Version strings are not standardised across writers, so anything matching on "HTTP/1.1" misses this entry entirely.

File
HAR · Har · UTF-8
Use case
API testingPerformance testing+1· Conversion set
Preview of HAR — JSON API Session (GET, POST, PUT, DELETE)
har
8.2 KB
Actual file preview for HAR — JSON API Session (GET, POST, PUT, DELETE)

HAR — JSON API Session (GET, POST, PUT, DELETE)

A four-call REST session against a fictional API host, with JSON request bodies in postData, an Authorization header carrying an obvious SAMPLE placeholder token, and a 204 response that has no body at all. The right shape for testing a HAR-to-mock-server or HAR-to-code converter.

File
HAR · Har · UTF-8
Use case
API testingPerformance testing+1· Conversion set
Preview of HAR — Multipart File Upload
har
3.3 KB
Actual file preview for HAR — Multipart File Upload

HAR — Multipart File Upload

A two-part multipart/form-data upload: a text file part with a fileName and a plain field part. The body uses CRLF between MIME parts because RFC 7578 requires it, even though the surrounding HAR document is LF-terminated — a distinction that matters when a replay tool rewrites the body.

File
HAR · Har · UTF-8
Use case
API testingPerformance testing+1· Conversion set
Preview of HAR — Page-Load Waterfall (5 Requests)
har
8.8 KB
Actual file preview for HAR — Page-Load Waterfall (5 Requests)

HAR — Page-Load Waterfall (5 Requests)

A five-request page load — document, stylesheet, script, image and favicon — across two fictional hosts, with full per-phase timings and an onLoad page timing. Every entry's time equals the sum of its non-negative timing phases, so a waterfall renderer can be checked arithmetically rather than by eye.

File
HAR · Har · 1 page
Use case
API testingPerformance testing+1· Conversion set
Preview of HAR — Query String and Header Edge Cases
har
3 KB
Actual file preview for HAR — Query String and Header Edge Cases

HAR — Query String and Header Edge Cases

One request whose query string encodes a space as %20 in one parameter and as + in another, includes a parameter with an empty value, and carries an Accept-Language header with quality values. The parsed queryString array is the answer key for whatever a URL parser produces from the raw URL.

File
HAR · Har · UTF-8
Use case
API testingPerformance testing+1· Conversion set
Preview of HAR — Redirect Chain (301, 302, 200)
har
5.6 KB
Actual file preview for HAR — Redirect Chain (301, 302, 200)

HAR — Redirect Chain (301, 302, 200)

An http URL that redirects to https and then to a query-carrying cart page, with redirectURL populated on both hops. Tools that count entries as page views report three here when the user saw one page.

File
HAR · Har · UTF-8
Use case
API testingPerformance testing+1· Conversion set
Preview of HAR — Server-Bound Waterfall (Wait Dominates)
har
7.4 KB
Actual file preview for HAR — Server-Bound Waterfall (Wait Dominates)

HAR — Server-Bound Waterfall (Wait Dominates)

Four API calls in which the wait phase — time to first byte — accounts for almost all of the elapsed time, the signature of a server-bound rather than network-bound page. Use it to check that a performance report attributes the cost to the server instead of blaming connection setup.

File
HAR · Har · UTF-8
Use case
API testingPerformance testing+1· Conversion set
Preview of HAR — Two Pages with Page Timings
har
5.5 KB
Actual file preview for HAR — Two Pages with Page Timings

HAR — Two Pages with Page Timings

Two navigations in one capture, with entries bound to their page through pageref. The second page's onLoad is -1, the HAR convention for a timing that never happened, which naive code averages in as zero and reports as an impossibly fast load.

File
HAR · Har · 2 pages
Use case
API testingPerformance testing+1· Conversion set
Preview of HAR — URL-Encoded Form POST
har
3.3 KB
Actual file preview for HAR — URL-Encoded Form POST

HAR — URL-Encoded Form POST

One form submission whose postData carries both the parsed params array and the raw urlencoded text — and the two must agree. The notes field contains a comma and an ampersand, so a decoder that splits before unescaping produces seven fields instead of five.

File
HAR · Har · UTF-8
Use case
API testingPerformance testing+1· Conversion set

Junit XML

Preview of JUnit XML — @Playwright/Test Dialect (playwright)
xml
2.8 KB
Actual file preview for JUnit XML — @Playwright/Test Dialect (playwright)

JUnit XML — @Playwright/Test Dialect (playwright)

The same 12-case Novus Checkout run written the way @playwright/test 1.47 junit reporter writes it. Playwright puts the run totals on the <testsuites> root, names each suite after its spec file, and uses the bare describe title as classname. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set
Preview of JUnit XML — 240-Case Suite
xml
18.7 KB
Actual file preview for JUnit XML — 240-Case Suite

JUnit XML — 240-Case Suite

240 cases across six classes, three of them failing. Big enough to time a parser and to check that a report UI paginates or virtualises rather than rendering every row, but still small enough to read.

File
XML · Junit XML · UTF-8
Use case
Performance testingConversion testing+1· Conversion set
Preview of JUnit XML — Aggregate <testsuites> Root
xml
2.3 KB
Actual file preview for JUnit XML — Aggregate <testsuites> Root

JUnit XML — Aggregate <testsuites> Root

Three suites under a <testsuites> root whose own attributes already hold the aggregate totals. A parser that sums the children and also trusts the root double-counts every case, which is the classic cause of a dashboard reporting 24 tests for a 12-test run.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — All Tests Passing
xml
754 B
Actual file preview for JUnit XML — All Tests Passing

JUnit XML — All Tests Passing

A clean green run: six passing cases, zero failures, errors and skips. The baseline a CI gate should treat as success, and the control case for any dashboard that colours a build from the failure count.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Bare <testsuite> Root (No Wrapper)
xml
897 B
Actual file preview for JUnit XML — Bare <testsuite> Root (No Wrapper)

JUnit XML — Bare <testsuite> Root (No Wrapper)

The single-suite form Gradle and Ant write: the root element is <testsuite> with no <testsuites> wrapper at all. Parsers hardcoded to descend from <testsuites> read this file as empty rather than failing, so it silently reports a run of zero tests.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Console Output in CDATA
xml
558 B
Actual file preview for JUnit XML — Console Output in CDATA

JUnit XML — Console Output in CDATA

Captured stdout and stderr wrapped in CDATA, where the stdout text itself looks like XML markup. A parser must treat the CDATA content as opaque characters; one that re-parses it finds a <report> element that does not exist.

File
XML · Junit XML · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of JUnit XML — Empty Suite (Zero Tests)
xml
236 B
Actual file preview for JUnit XML — Empty Suite (Zero Tests)

JUnit XML — Empty Suite (Zero Tests)

A structurally valid report containing a suite with no <testcase> children at all — what a runner writes when a filter matched nothing. Aggregators that divide by the test count to compute a pass rate hit a zero denominator here.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Error and Failure Distinguished
xml
1.1 KB
Actual file preview for JUnit XML — Error and Failure Distinguished

JUnit XML — Error and Failure Distinguished

One <failure> (an assertion that did not hold) and one <error> (an exception the test never expected), side by side. Parsers that collapse the two lose the distinction between a broken assertion and a broken environment.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Escaped Characters in Test Names
xml
1 KB
Actual file preview for JUnit XML — Escaped Characters in Test Names

JUnit XML — Escaped Characters in Test Names

Test names containing &, <, >, quotes and an apostrophe, escaped as XML requires. Round-tripping this report through a converter is the fastest way to find double-escaping bugs that turn &amp; into &amp;amp; one hop at a time.

File
XML · Junit XML · UTF-8
Use case
Encoding detectionConversion testing+1· Conversion set
Preview of JUnit XML — Every Test Skipped
xml
756 B
Actual file preview for JUnit XML — Every Test Skipped

JUnit XML — Every Test Skipped

A suite in which every case was skipped, so tests equals skipped and nothing actually ran. A gate that reads only the failure count calls this green; one that checks executed>0 catches it.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — File and Line Attributes
xml
1.3 KB
Actual file preview for JUnit XML — File and Line Attributes

JUnit XML — File and Line Attributes

Cases annotated with the source file and line they were declared on, as pytest and several JS runners emit. This is what a code-review annotation bot needs to place a failure comment on the right line of the right file.

File
XML · Junit XML · UTF-8
Use case
Code parsingConversion testing+1· Conversion set
Preview of JUnit XML — Go-Junit-Report Dialect (go-junit-report)
xml
2.8 KB
Actual file preview for JUnit XML — Go-Junit-Report Dialect (go-junit-report)

JUnit XML — Go-Junit-Report Dialect (go-junit-report)

The same 12-case Novus Checkout run written the way go-junit-report 2.1 writes it. go-junit-report names each suite after a Go package and carries the toolchain version in a go.version property. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set
Preview of JUnit XML — Gradle Dialect (gradle)
xml
2.8 KB
Actual file preview for JUnit XML — Gradle Dialect (gradle)

JUnit XML — Gradle Dialect (gradle)

The same 12-case Novus Checkout run written the way Gradle 8.9 Test task writes it. Gradle writes hostname and timestamp on every suite and an empty self-closing <properties/> element that some parsers mishandle. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set
Preview of JUnit XML — Jest-Junit Dialect (jest-junit)
xml
3 KB
Actual file preview for JUnit XML — Jest-Junit Dialect (jest-junit)

JUnit XML — Jest-Junit Dialect (jest-junit)

The same 12-case Novus Checkout run written the way jest-junit 16 writes it. jest-junit repeats the whole "describe > it" title in both classname and name, which breaks dashboards that assume classname is a package. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set
Preview of JUnit XML — Locale-Formatted and Exponent Durations
xml
465 B
Actual file preview for JUnit XML — Locale-Formatted and Exponent Durations

JUnit XML — Locale-Formatted and Exponent Durations

Durations written four different ways in one file: scientific notation, a comma decimal separator from a German-locale JVM, a bare integer, and a comma that could be either a decimal point or a thousands separator. A parser using a locale-sensitive number reader gets a different answer depending on where it runs.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Maven-Surefire Dialect (surefire)
xml
3.2 KB
Actual file preview for JUnit XML — Maven-Surefire Dialect (surefire)

JUnit XML — Maven-Surefire Dialect (surefire)

The same 12-case Novus Checkout run written the way maven-surefire 3.2 writes it. Maven Surefire merges its per-class files under a <testsuites> root and adds a <properties> block plus system-out/system-err on every suite. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set
Preview of JUnit XML — Mixed Pass, Fail, Error and Skip
xml
2 KB
Actual file preview for JUnit XML — Mixed Pass, Fail, Error and Skip

JUnit XML — Mixed Pass, Fail, Error and Skip

The full canonical run flattened into a single suite: nine passes, one failure, one error and one skip. This is the same twelve cases the eight dialect files carry, so totals can be compared straight across.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Multi-line Assertion Diff
xml
737 B
Actual file preview for JUnit XML — Multi-line Assertion Diff

JUnit XML — Multi-line Assertion Diff

A failure whose message contains an expected/actual diff with angle brackets and newlines, the shape assertion libraries actually produce. Good for checking that a dashboard escapes the message for HTML and keeps its line breaks.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Multiple Failures Across Classes
xml
1.6 KB
Actual file preview for JUnit XML — Multiple Failures Across Classes

JUnit XML — Multiple Failures Across Classes

Three failures spread across three different classes in one suite. Use it to check that a reporter lists every failure rather than stopping at the first, and that it groups them by classname rather than by suite.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — No Time Attributes
xml
421 B
Actual file preview for JUnit XML — No Time Attributes

JUnit XML — No Time Attributes

A report from a runner that never records durations: neither the suite nor any case carries a time attribute. Dashboards that parse time unconditionally throw here, and ones that default it to zero quietly report a suite that took no time at all.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Non-ASCII Test Names (UTF-8)
xml
1 KB
Actual file preview for JUnit XML — Non-ASCII Test Names (UTF-8)

JUnit XML — Non-ASCII Test Names (UTF-8)

Test names in German, French, Japanese, Greek and Russian, stored as UTF-8 with no BOM and an explicit encoding declaration. A reporter that assumes the platform default encoding produces mojibake here rather than an error.

File
XML · Junit XML · UTF-8
Use case
Encoding detectionInternationalization+1· Conversion set
Preview of JUnit XML — One Failing Test
xml
818 B
Actual file preview for JUnit XML — One Failing Test

JUnit XML — One Failing Test

Three cases, one of them failing with an assertion message and a CDATA stack trace. The smallest report that must turn a build red, and the one to test a failure-summary renderer against.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Passed-on-Retry (flakyFailure)
xml
930 B
Actual file preview for JUnit XML — Passed-on-Retry (flakyFailure)

JUnit XML — Passed-on-Retry (flakyFailure)

A case that failed on its first attempt and passed on the retry, recorded with Surefire's <flakyFailure> child. The suite counters say zero failures, so a parser that ignores the extension element reports a clean run and loses the flake entirely.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Phpunit Dialect (phpunit)
xml
3.2 KB
Actual file preview for JUnit XML — Phpunit Dialect (phpunit)

JUnit XML — Phpunit Dialect (phpunit)

The same 12-case Novus Checkout run written the way PHPUnit 11.2 --log-junit writes it. PHPUnit nests per-class suites inside a named parent suite and adds an assertions count that no other dialect reports. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set
Preview of JUnit XML — Properties Block with Awkward Values
xml
656 B
Actual file preview for JUnit XML — Properties Block with Awkward Values

JUnit XML — Properties Block with Awkward Values

A <properties> block holding an empty value, an escaped ampersand in a branch name and a JVM options string with spaces. Use it to check that build metadata survives extraction with its entities unescaped exactly once.

File
XML · Junit XML · UTF-8
Use case
Metadata testingConfig parsing+1· Conversion set
Preview of JUnit XML — Pytest Dialect (pytest)
xml
2.7 KB
Actual file preview for JUnit XML — Pytest Dialect (pytest)

JUnit XML — Pytest Dialect (pytest)

The same 12-case Novus Checkout run written the way pytest 8.2 --junitxml writes it. pytest emits a single <testsuite name="pytest"> whose classname is the dotted module path, and decorates each case with file and line attributes. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set
Preview of JUnit XML — Same Test Reported Twice
xml
814 B
Actual file preview for JUnit XML — Same Test Reported Twice

JUnit XML — Same Test Reported Twice

The same classname and name appear twice with different outcomes — what a parameterised runner or a merged report can produce. Any store keyed on classname+name overwrites the first result and reports the suite as green or red depending purely on document order.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Skip with Message and Body
xml
681 B
Actual file preview for JUnit XML — Skip with Message and Body

JUnit XML — Skip with Message and Body

A skipped case whose reason appears twice — in the message attribute and again as CDATA text inside the <skipped> element. Reporters that read only the attribute silently drop the longer explanation.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Timestamp, Hostname and Package Metadata
xml
725 B
Actual file preview for JUnit XML — Timestamp, Hostname and Package Metadata

JUnit XML — Timestamp, Hostname and Package Metadata

Every optional run-metadata attribute a JUnit suite may carry — timestamp, hostname, package, id — plus a properties block holding build and branch identifiers. Use it to test that a dashboard reads build context from the report instead of from its own environment.

File
XML · Junit XML · UTF-8
Use case
Metadata testingConversion testing+1· Conversion set
Preview of JUnit XML — Vitest Dialect (vitest)
xml
2.8 KB
Actual file preview for JUnit XML — Vitest Dialect (vitest)

JUnit XML — Vitest Dialect (vitest)

The same 12-case Novus Checkout run written the way vitest 2.0 junit reporter writes it. Vitest names the root suite after the elapsed time and uses the spec file path as classname for every case. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set

Performance

Preview of Load Test — Latency Percentiles by Scenario (CSV)
csv
308 B
Actual file preview for Load Test — Latency Percentiles by Scenario (CSV)

Load Test — Latency Percentiles by Scenario (CSV)

The percentile table a performance report renders as a chart, with mean, p50, p95, p99 and max for each of the four scenarios. The same numbers appear inside the JSON summary in this group, so a chart built from either source can be diffed against the other.

File
CSV · Performance · 4 rows
Use case
Performance testingCSV parsing+1· Conversion set
Preview of Load Test — Per-Request Log (CSV)
csv
23.4 KB
Actual file preview for Load Test — Per-Request Log (CSV)

Load Test — Per-Request Log (CSV)

Three hundred individual request records with timestamp, scenario, status and duration — the raw log a percentile calculation has to be computed from rather than read off. A handful of 4xx and 5xx responses are mixed in so an error-rate calculation has something to find.

File
CSV · Performance · 300 rows
Use case
Performance testingCSV parsing+1· Conversion set
Preview of Load Test — Run Summary with Thresholds (JSON)
json
1.7 KB
Actual file preview for Load Test — Run Summary with Thresholds (JSON)

Load Test — Run Summary with Thresholds (JSON)

A load-test run summary in the shape a threshold-checking CI step consumes: totals, per-scenario percentiles, and three named thresholds each carrying its limit, the observed value and a pass flag. Publishing the limit next to the observation is what lets a gate be re-evaluated without rerunning the test.

File
JSON · Performance
Use case
Performance testingJSON parsing+1· Conversion set
Preview of Performance Budget — Page and API Limits (JSON)
json
1.5 KB
Actual file preview for Performance Budget — Page and API Limits (JSON)

Performance Budget — Page and API Limits (JSON)

A budget file pairing per-path resource-size and timing limits with API latency budgets, including a glob path that must be matched rather than compared for equality. It is the configuration side of the load-test results in this group: the limits a run is judged against.

File
JSON · Performance
Use case
Performance testingConfig parsing+1· Conversion set

Plans

Preview of Requirements Traceability Matrix with One Gap (CSV)
csv
939 B
Actual file preview for Requirements Traceability Matrix with One Gap (CSV)

Requirements Traceability Matrix with One Gap (CSV)

Thirteen requirements mapped to the test cases that cover them — and one, REQ-PAY-02, deliberately covered by nothing. A coverage-gap report that does not surface that row is not working, which makes this the answer key for exactly that check.

File
CSV · Plans · 13 rows
Use case
CSV parsingData import+1· Conversion set
Preview of Test Case Matrix — Twelve Documented Cases (CSV)
csv
1.6 KB
Actual file preview for Test Case Matrix — Twelve Documented Cases (CSV)

Test Case Matrix — Twelve Documented Cases (CSV)

Twelve test cases with level, priority, the requirement each covers, preconditions, steps and expected result — the table a test-management import expects. Eleven of the twelve are automated, and the requirement column joins this file to the traceability matrix next to it.

File
CSV · Plans · 12 rows
Use case
CSV parsingData import+1· Conversion set
Preview of Test Plan — Release Plan for a SAMPLE Service (Markdown)
md
1.9 KB
Actual file preview for Test Plan — Release Plan for a SAMPLE Service (Markdown)

Test Plan — Release Plan for a SAMPLE Service (Markdown)

A complete release test plan for the fictional Novus Checkout Service — scope, test levels, entry and exit criteria, a risk table and deliverables. Useful as a Markdown-rendering fixture with three tables and nested lists, and as a realistic input for documentation tooling that has to extract structure from prose.

File
MD · Plans
Use case
Editor testingConversion testing+1· Conversion set

Runners

Preview of Jest — JSON Results
json
6.4 KB
Actual file preview for Jest — JSON Results

Jest — JSON Results

Jest's --json output, where skipped tests are called pending and the totals appear as flat numTotal/numPassed/numFailed fields alongside per-file assertionResults. Timestamps are epoch milliseconds rather than ISO strings, which is the field most converters mis-handle. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
JSON · Runners · UTF-8
Use case
JSON parsingConversion testing+1· Conversion set
Preview of Mocha — JSON Reporter Output
json
7.3 KB
Actual file preview for Mocha — JSON Reporter Output

Mocha — JSON Reporter Output

Mocha's JSON reporter, which lists every test in a tests array and then repeats each one in passes, failures or pending. Summing all four arrays counts the run twice — this file exists so that bug shows up on a 12-test suite instead of in production. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
JSON · Runners · UTF-8
Use case
JSON parsingConversion testing+1· Conversion set
Preview of MSTest — TRX Result File
trx
14 KB
Actual file preview for MSTest — TRX Result File

MSTest — TRX Result File

The `dotnet test` TRX document in full: Times, TestSettings, Results, TestDefinitions, TestEntries, TestLists and a ResultSummary with sixteen counters. Results and definitions are joined on GUIDs, so a converter that reads only <Results> loses every class name. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
TRX · Runners · UTF-8
Use case
Conversion testingLog parsing+1· Conversion set
Preview of NUnit 3 — Test Result XML
xml
6.5 KB
Actual file preview for NUnit 3 — Test Result XML

NUnit 3 — Test Result XML

The NUnit 3 test-run document, with a nested Assembly/TestFixture suite tree, an environment element and per-case seeds. NUnit has no separate error outcome, so the errored case appears as Failed with label="Error" and the report reads failed=2. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
XML · Runners · UTF-8
Use case
Conversion testingLog parsing+1· Conversion set
Preview of Playwright — JSON Report
json
13.8 KB
Actual file preview for Playwright — JSON Report

Playwright — JSON Report

Playwright's native JSON report, four levels deep: suites contain specs, specs contain tests (one per project) and tests contain results (one per attempt). Its stats use expected/unexpected rather than passed/failed, because a test annotated as expected-to-fail counts as expected when it fails. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
JSON · Runners · UTF-8
Use case
JSON parsingConversion testing+1· Conversion set
Preview of pytest — JSON Report (pytest-json-report)
json
6.3 KB
Actual file preview for pytest — JSON Report (pytest-json-report)

pytest — JSON Report (pytest-json-report)

The pytest-json-report document, which records setup, call and teardown as three separate phases per test and keeps error distinct from failed in its summary. A test can pass its call phase and still error in teardown, which is why summing outcomes without reading the phases gives the wrong total. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
JSON · Runners · UTF-8
Use case
JSON parsingConversion testing+1· Conversion set
Preview of Robot Framework — Checkout Suite
robot
1.2 KB
Actual file preview for Robot Framework — Checkout Suite

Robot Framework — Checkout Suite

A complete Robot Framework suite with all four common sections, scalar, list and dictionary variables, a continued line using ..., and user keywords with arguments. Robot separates arguments on two or more spaces, so a parser splitting on a single space merges every keyword call into one token.

File
ROBOT · Runners · UTF-8
Use case
Code parsingEditor testing+1· Conversion set
Preview of Robot Framework — Data-Driven Test Template
robot
682 B
Actual file preview for Robot Framework — Data-Driven Test Template

Robot Framework — Data-Driven Test Template

The template form, in which the *** Test Cases *** header itself names the argument columns and each row becomes one test. Five tests share a single keyword body, and a parser that reads the header row as a test name reports six.

File
ROBOT · Runners · UTF-8
Use case
Code parsingEditor testing+1· Conversion set
Preview of Robot Framework — output.xml
xml
6.2 KB
Actual file preview for Robot Framework — output.xml

Robot Framework — output.xml

Robot Framework's output.xml, in which every keyword call carries its own status element and a trailing statistics section restates the totals by tag and by suite. Robot 7 reports elapsed seconds rather than the endtime attribute older versions used, so schemaversion is what a reader must branch on. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
XML · Runners · UTF-8
Use case
Conversion testingLog parsing+1· Conversion set
Preview of Robot Framework — Shared Keyword Resource
robot
768 B
Actual file preview for Robot Framework — Shared Keyword Resource

Robot Framework — Shared Keyword Resource

A resource file: keywords, variables and imports with no *** Test Cases *** section at all, meant to be imported by the suites next to it. Tooling that requires at least one test case rejects a perfectly ordinary resource, and keyword defaults such as ${qty}=1 are where argument parsers usually stop.

File
ROBOT · Runners · UTF-8
Use case
Code parsingEditor testing+1· Conversion set
Preview of TestNG — testng-results.xml
xml
4.5 KB
Actual file preview for TestNG — testng-results.xml

TestNG — testng-results.xml

TestNG's own result document, with suite/test/class/test-method nesting, signature attributes and full stack traces in CDATA. TestNG has no error status, so the errored case is reported as FAIL and the header attributes read failed=2. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
XML · Runners · UTF-8
Use case
Conversion testingLog parsing+1· Conversion set
Preview of xUnit.net — v2 Assembly Results
xml
3.4 KB
Actual file preview for xUnit.net — v2 Assembly Results

xUnit.net — v2 Assembly Results

The xUnit.net v2 shape: an <assemblies> root holding one assembly, whose tests are grouped into collections rather than classes. Result values are Pass, Fail and Skip with capital initials, which trips converters doing a case-sensitive comparison against the lowercase values every other format uses. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
XML · Runners · UTF-8
Use case
Conversion testingLog parsing+1· Conversion set

Tap

Preview of TAP — Bail Out Mid-Run
tap
214 B
Actual file preview for TAP — Bail Out Mid-Run

TAP — Bail Out Mid-Run

A run abandoned after the third assertion with a Bail out! line, leaving five of the planned eight assertions unreported. The run is a failure even though only one assertion said not ok, and a consumer must not report 2/3 passing as a 67% pass rate.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Comments and Diagnostic Lines
tap
350 B
Actual file preview for TAP — Comments and Diagnostic Lines

TAP — Comments and Diagnostic Lines

Free-form # comment lines interleaved with assertions, including a trailing summary block. Comments carry no result and must never shift assertion numbering, which is exactly what a parser counting lines instead of ok/not ok tokens gets wrong.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Entire Plan Skipped
tap
87 B
Actual file preview for TAP — Entire Plan Skipped

TAP — Entire Plan Skipped

A whole suite declined in a single line: a zero-length plan with a SKIP directive and a reason. It is a valid, complete TAP stream containing no assertions, and a consumer must report it as skipped rather than as an empty pass or a parse error.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Failures with YAML Diagnostics
tap
435 B
Actual file preview for TAP — Failures with YAML Diagnostics

TAP — Failures with YAML Diagnostics

Two failing assertions, each followed by an indented YAML diagnostic block carrying the expected and actual values and a file/line location. The block is where every useful failure message in TAP lives, and it is the part naive line-based parsers throw away.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Nested Subtests (Indented)
tap
367 B
Actual file preview for TAP — Nested Subtests (Indented)

TAP — Nested Subtests (Indented)

Two subtests, each an indented TAP stream with its own plan, rolled up into two top-level assertions. Flatten it and you count seven assertions instead of two; ignore the indentation and the nested failure is counted twice.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Plan Count Does Not Match
tap
331 B
Actual file preview for TAP — Plan Count Does Not Match

TAP — Plan Count Does Not Match

Every assertion in this stream says ok, but the plan promised ten and only eight arrived — the signature of a runner that crashed after its last reported assertion. A consumer that only counts not ok lines calls this a clean pass.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Plan First, All Passing
tap
251 B
Actual file preview for TAP — Plan First, All Passing

TAP — Plan First, All Passing

The canonical TAP shape: a version line, a leading plan, then six passing assertions in order. Anything a TAP consumer does with a real stream it must do with this one first.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — SKIP Directives
tap
344 B
Actual file preview for TAP — SKIP Directives

TAP — SKIP Directives

Two assertions marked # SKIP with a reason, alongside a genuine failure. Skipped assertions are written as ok, so counting ok lines reports 5 passes when only 3 tests actually ran.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — TODO Directives
tap
299 B
Actual file preview for TAP — TODO Directives

TAP — TODO Directives

Two failing assertions marked # TODO, meaning they are known-unfinished work rather than regressions. A TODO failure must not fail the run, so a consumer that treats every not ok as a build breaker turns this green run red.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — TODO That Unexpectedly Passed
tap
220 B
Actual file preview for TAP — TODO That Unexpectedly Passed

TAP — TODO That Unexpectedly Passed

Assertion 2 is marked TODO but reports ok — an unexpected success, which means the feature landed and the marker is now stale. Harnesses such as prove report this as a bonus rather than a pass, and dropping the distinction lets stale TODOs accumulate forever.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Trailing Plan
tap
182 B
Actual file preview for TAP — Trailing Plan

TAP — Trailing Plan

The same stream with the plan at the end, which is what a harness emits when it does not know the test count up front. A consumer that requires a leading plan rejects a perfectly valid stream.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Version 14 Subtest Syntax
tap
383 B
Actual file preview for TAP — Version 14 Subtest Syntax

TAP — Version 14 Subtest Syntax

TAP 14 with an explicit version line and a pragma inside a subtest. Consumers pinned to version 13 either reject the stream outright or ignore the pragma, so this file separates the two behaviours.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set

Frequently asked questions

Which test-report formats are covered?

JUnit and NUnit XML, MSTest TRX, TAP, Cucumber and Playwright JSON, Gherkin .feature files, and Robot Framework suites — plus Cobertura, JaCoCo, Clover, LCOV, and Istanbul JSON for coverage.

Do the coverage reports agree with each other?

Yes. Coverage fixtures in different formats describe the same fictional source tree with the same totals, so you can run a converter and assert the numbers survive the round trip.

Are there failing and malformed reports too?

Yes — passing, failing, skipped, and flaky runs, plus intentionally malformed reports labelled as such in title and description so a parser can be tested for failing loudly.