mirror of
https://github.com/dorny/test-reporter.git
synced 2025-12-15 22:07:09 +01:00
Add a new parser for the open-test-reporting format developed by the JUnit team (https://github.com/ota4j-team/open-test-reporting). This format is a modern, framework-agnostic XML-based test reporting standard that supports rich metadata including tags, attachments, and infrastructure information. Features: - Auto-detection of both XML format variants: - Hierarchical format (h:execution) - tree-structured results - Event-based format (e:events) - streaming/real-time results - ISO 8601 duration parsing (e.g., PT1.234S) - Status mapping: SUCCESSFUL, SKIPPED, ABORTED, FAILED, ERRORED - Error message extraction from failed tests - Proper XML namespace handling Files added: - src/parsers/open-test-reporting/open-test-reporting-types.ts - src/parsers/open-test-reporting/open-test-reporting-parser.ts - __tests__/open-test-reporting.test.ts (20 tests) - __tests__/fixtures/open-test-reporting/*.xml
157 lines
4.3 KiB
Text
157 lines
4.3 KiB
Text
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
|
|
|
|
exports[`open-test-reporting tests report generation result matches snapshot for events format 1`] = `
|
|
TestRunResult {
|
|
"path": "fixtures/open-test-reporting/events.xml",
|
|
"suites": [
|
|
TestSuiteResult {
|
|
"groups": [
|
|
TestGroupResult {
|
|
"name": "",
|
|
"tests": [
|
|
TestCaseResult {
|
|
"error": undefined,
|
|
"name": "testAddition",
|
|
"result": "success",
|
|
"time": 100,
|
|
},
|
|
TestCaseResult {
|
|
"error": undefined,
|
|
"name": "testSubtraction",
|
|
"result": "success",
|
|
"time": 150,
|
|
},
|
|
TestCaseResult {
|
|
"error": {
|
|
"details": "java.lang.ArithmeticException: Division by zero",
|
|
"message": "java.lang.ArithmeticException: Division by zero",
|
|
},
|
|
"name": "testDivision",
|
|
"result": "failed",
|
|
"time": 150,
|
|
},
|
|
TestCaseResult {
|
|
"error": undefined,
|
|
"name": "testMultiplication",
|
|
"result": "skipped",
|
|
"time": 10,
|
|
},
|
|
],
|
|
},
|
|
],
|
|
"name": "com.example.CalculatorTest",
|
|
"totalTime": 700,
|
|
},
|
|
TestSuiteResult {
|
|
"groups": [
|
|
TestGroupResult {
|
|
"name": "TrimTests",
|
|
"tests": [
|
|
TestCaseResult {
|
|
"error": undefined,
|
|
"name": "testTrimLeft",
|
|
"result": "success",
|
|
"time": 90,
|
|
},
|
|
TestCaseResult {
|
|
"error": undefined,
|
|
"name": "testTrimRight",
|
|
"result": "success",
|
|
"time": 90,
|
|
},
|
|
],
|
|
},
|
|
],
|
|
"name": "com.example.StringUtilsTest",
|
|
"totalTime": 400,
|
|
},
|
|
],
|
|
"totalTime": 1100,
|
|
}
|
|
`;
|
|
|
|
exports[`open-test-reporting tests report generation result matches snapshot for hierarchy format 1`] = `
|
|
TestRunResult {
|
|
"path": "fixtures/open-test-reporting/hierarchy.xml",
|
|
"suites": [
|
|
TestSuiteResult {
|
|
"groups": [
|
|
TestGroupResult {
|
|
"name": "",
|
|
"tests": [
|
|
TestCaseResult {
|
|
"error": undefined,
|
|
"name": "testUserCreation",
|
|
"result": "success",
|
|
"time": 123,
|
|
},
|
|
TestCaseResult {
|
|
"error": undefined,
|
|
"name": "testUserDeletion",
|
|
"result": "success",
|
|
"time": 234,
|
|
},
|
|
TestCaseResult {
|
|
"error": undefined,
|
|
"name": "testUserUpdate",
|
|
"result": "skipped",
|
|
"time": 45,
|
|
},
|
|
],
|
|
},
|
|
],
|
|
"name": "com.example.UserServiceTest",
|
|
"totalTime": 1234,
|
|
},
|
|
TestSuiteResult {
|
|
"groups": [
|
|
TestGroupResult {
|
|
"name": "ValidationTests",
|
|
"tests": [
|
|
TestCaseResult {
|
|
"error": undefined,
|
|
"name": "testValidAmount",
|
|
"result": "success",
|
|
"time": 200,
|
|
},
|
|
TestCaseResult {
|
|
"error": undefined,
|
|
"name": "testInvalidAmount",
|
|
"result": "success",
|
|
"time": 300,
|
|
},
|
|
],
|
|
},
|
|
TestGroupResult {
|
|
"name": "ProcessingTests",
|
|
"tests": [
|
|
TestCaseResult {
|
|
"error": undefined,
|
|
"name": "testSuccessfulPayment",
|
|
"result": "success",
|
|
"time": 500,
|
|
},
|
|
TestCaseResult {
|
|
"error": {
|
|
"details": "org.opentest4j.AssertionFailedError: Payment should complete within 500ms but took 700ms",
|
|
"message": "org.opentest4j.AssertionFailedError: Payment should complete within 500ms but took 700ms",
|
|
},
|
|
"name": "testPaymentTimeout",
|
|
"result": "failed",
|
|
"time": 700,
|
|
},
|
|
],
|
|
},
|
|
],
|
|
"name": "com.example.PaymentServiceTest",
|
|
"totalTime": 2500,
|
|
},
|
|
TestSuiteResult {
|
|
"groups": [],
|
|
"name": "com.example.EmptySuite",
|
|
"totalTime": 0,
|
|
},
|
|
],
|
|
"totalTime": 3734,
|
|
}
|
|
`;
|