A complete TypeScript implementation for working with CTRF (Common Test Report Format) reports.
The core functions for working with CTRF reports:
- validate - Validate a report against the JSON schema
- isValid - Type guard to check if a report is valid
- validateStrict - Validate and throw on invalid reports
- parse - Parse JSON string into a CTRFReport
- stringify - Serialize a CTRFReport to JSON
- calculateSummary - Calculate test statistics
Fluent API for constructing CTRF reports programmatically:
- ReportBuilder - Build complete CTRF reports
- TestBuilder - Build individual test objects
The core schema types that define CTRF structure (what consumers import):
Primary Types:
- CTRFReport - Root report object
- Test - Individual test result
- Results - Container for test results
- Summary - Aggregated statistics
- Tool - Test tool information
- Environment - Environment metadata
Supporting Types:
- Attachment - Files/data attached to tests
- Step - Individual test execution steps
- RetryAttempt - Test retry information
- Insights - Historical run insights
- TestInsights - Historical test insights
- Baseline - Baseline comparison metrics
- MetricDelta - Metric change tracking
- TestStatus - Valid test status values
- filterTests - Filter tests by criteria
- findTest - Find a single test
- addInsights - Add historical insights to reports
- isTestFlaky - Detect flaky tests
- merge - Combine multiple reports
- getSchema - Get JSON Schema for a spec version
- getCurrentSpecVersion - Get current version
- getSupportedSpecVersions - List supported versions
- schema - Current schema object
Runtime type checking functions:
- isCTRFReport - Check if object is a CTRF report
- isTest - Check if object is a Test
- isTestStatus - Check if value is a valid status
- isRetryAttempt - Check if object is a retry attempt
- hasInsights - Check if report has insights
- generateTestId - Generate deterministic test UUID
- generateReportId - Generate random report UUID
- REPORT_FORMAT - CTRF format identifier
- CURRENT_SPEC_VERSION - Current spec version
- TEST_STATUSES - Valid test statuses
- SUPPORTED_SPEC_VERSIONS - Supported versions
- CTRF_NAMESPACE - UUID namespace
- CTRFError - Base error class
- ValidationError - Schema validation errors
- ParseError - JSON parsing errors
- SchemaVersionError - Unsupported version errors
- FileError - File operation errors
- BuilderError - Builder validation errors
Helper types for using this library's utilities (not part of CTRF schema):
- FilterCriteria - Options for filtering tests
- ReportBuilderOptions - Report builder configuration
- TestBuilderOptions - Test builder configuration
- ParseOptions - JSON parsing options
- ValidateOptions - Validation options
- ValidationResult - Validation result details
- ValidationErrorDetail - Validation error information
- MergeOptions - Report merge options
- InsightsOptions - Insights configuration
- StringifyOptions - JSON serialization options
- SummaryOptions - Summary calculation options
All Classes
All Functions
All Interfaces
- Attachment
- Baseline
- CTRFReport
- Environment
- FilterCriteria
- Insights
- InsightsOptions
- MergeOptions
- MetricDelta
- ParseOptions
- ReportBuilderOptions
- Results
- RetryAttempt
- Step
- StringifyOptions
- Summary
- SummaryOptions
- Test
- TestBuilderOptions
- TestInsights
- Tool
- ValidateOptions
- ValidationErrorDetail
- ValidationResult