🍺 BREW Explorer

← all formulae

xcresultparser

brew install xcresultparser v2.0.1 MIT

Parse binary .xcresult bundles from Xcode builds and tests, outputting results in txt, XML, JUnit, Cobertura, HTML, Markdown, and other formats.

Why you might care

Essential for CI/CD pipelines and test automation on macOS — converts Xcode's opaque binary result bundles into machine-readable formats (JUnit, Cobertura) that integrate with common CI systems like Jenkins, GitHub Actions, and SonarQube. Handles both test results and code coverage data, distinguishing expected failures where applicable.

Categories

Alternatives

xcparse xcresulttool
12.0k
30-day installs · #322
31.2k
90-day · #385
139.3k
365-day · #347
146
★ GitHub stars · updated 3mo ago

Links

Blurb generated by claude-haiku-4-5 on today.

Raw metadata
{
  "aliases": [],
  "alternatives": [
    "xcparse",
    "xcresulttool"
  ],
  "build_dependencies": [],
  "categories": [
    "parser",
    "build-system"
  ],
  "caveats": null,
  "conflicts_with": [],
  "dependencies": [],
  "deprecated": 0,
  "deprecation_reason": null,
  "desc": "Parse binary .xcresult bundles from Xcode builds and test runs",
  "disable_reason": null,
  "disabled": 0,
  "enrichment_fetched_at": "2026-06-20T23:40:48+00:00",
  "first_seen": "2026-06-20T23:34:18+00:00",
  "full_name": "xcresultparser",
  "github_default_branch": "main",
  "github_last_commit_at": "2026-03-19T16:28:08Z",
  "github_readme_excerpt": "# xcresultparser\n\n## Overview\nParse the binary xcresult bundle from Xcode builds and test runs.\n\nInterpret binary .xcresult files and print summary in different formats:\n- txt\n- colored command line output\n- xml\n- junit\n- cobertura\n- html\n- markdown\n- warnings\n- errors\n\nIn case of \u0027xml\u0027 JUnit format for test results and generic format (Sonarqube) for coverage data is used.\n\nYou can also specify the name of the project root. Paths and urls are then relative to the specified directory. (used for urls in xml output)\n\nThis tool can read test result data and code coverage data from an `.xcresult` bundle using `xcresulttool` and `xccov`.\nAll JSON parsing is done with native `Codable` models in this project.\n\n## Requirements\n- macOS 12 or newer\n\n## Expected Failure Semantics\n- For `txt`, `cli`, `html`, and `md`, expected failures are represented as a distinct test state.\n- For `junit` and sonar test execution `xml`, expected failures are emitted as regular passing test cases for schema compatibility.\n\n\u003cdetails\u003e\n  \u003csummary\u003eMore on converting code coverage data\u003c/summary\u003e\n  \n~~Unfortunately converting to the coverage xml format suited for e.g. sonarqube is a tedious task.\nIt requires us to invoke the xccov binary for each single file in the project.~~\n\n~~First we get a list of source files with coverage data from the archive, using xccov --file-list\nand then we need to invoke xccov for each single file. That takes a considerable amount of time.\nSo at least we can spread it over different threads, so that it executes in parallel and is overall faster.~~\n\n~~Until now we used [xccov-to-sonarqube-generic.sh]( https://github.com/SonarSource/sonar-scanning-examples/blob/master/swift-coverage/swift-coverage-example/xccov-to-sonarqube-generic.sh)\nwhich does the same job, just in a shell script. It has the same problem\nand since it can not spawn it to different threads, it takes about 5x the time.~~\n\nIt used to be like described above up until Xcode 13. Xcode 13 brought a new version ",
  "github_repo": "a7ex/xcresultparser",
  "github_stars": 146,
  "github_topics": [],
  "homepage": "https://github.com/a7ex/xcresultparser",
  "homepage_og_description": null,
  "homepage_og_image": null,
  "homepage_title": null,
  "installs_30d": 11990,
  "installs_365d": 139265,
  "installs_90d": 31247,
  "keg_only": 0,
  "keg_only_reason": null,
  "last_seen": "2026-06-20T23:34:18+00:00",
  "license": "MIT",
  "llm_generated_at": "2026-06-20T23:44:09+00:00",
  "llm_model": "claude-haiku-4-5",
  "name": "xcresultparser",
  "oldnames": [],
  "one_liner": "Parse binary .xcresult bundles from Xcode builds and tests, outputting results in txt, XML, JUnit, Cobertura, HTML, Markdown, and other formats.",
  "optional_dependencies": [],
  "rank_30d": 322,
  "rank_365d": 347,
  "rank_90d": 385,
  "raw_hash": "b0a1c00cc65bbef4",
  "recommended_dependencies": [],
  "revision": 0,
  "ruby_source_path": "Formula/x/xcresultparser.rb",
  "tap": "homebrew/core",
  "test_dependencies": [],
  "uses_from_macos": [],
  "version_head": "HEAD",
  "version_stable": "2.0.1",
  "versioned_formulae": [],
  "why_use_this": "Essential for CI/CD pipelines and test automation on macOS \u2014 converts Xcode\u0027s opaque binary result bundles into machine-readable formats (JUnit, Cobertura) that integrate with common CI systems like Jenkins, GitHub Actions, and SonarQube. Handles both test results and code coverage data, distinguishing expected failures where applicable."
}