Skip to main content

xcresult

A Python library and CLI tool for parsing Xcode's .xcresult bundles. It wraps xcresulttool and deserializes the output into typed Python objects, so you can inspect build issues, extract test results, export attachments, and generate JUnit XML reports.

Installation

pip install xcresult

Requires Python 3.10+ and Xcode's xcresulttool (ships with Xcode).

Library Usage

import xcresult

bundle = xcresult.Xcresults("/path/to/MyApp.xcresult")

# Access the invocation record
record = bundle.actions_invocation_record

# Check for errors
if record.issues.errorSummaries:
    for error in record.issues.errorSummaries:
        print(error.message)

# Export test attachments (screenshots, etc.)
bundle.export_test_attachments("/path/to/output/")

# Write JUnit XML
bundle.write_junit("/path/to/results.junit")

CLI Usage

The package installs an xcresult command with three subcommands:

Export test attachments

xcresult -b /path/to/MyApp.xcresult export -o /path/to/output/

Generate JUnit XML

xcresult -b /path/to/MyApp.xcresult junit -o /path/to/results.junit

Optionally export attachments alongside the JUnit file:

xcresult -b /path/to/MyApp.xcresult junit -o /path/to/results.junit --export-attachments-path /path/to/attachments/

Check for issues

xcresult -b /path/to/MyApp.xcresult check-issues

Filter by issue type with --issue-types:

xcresult -b /path/to/MyApp.xcresult check-issues --issue-types error warning

Available issue types: error, warning, analyzer-warning, test-failure, test-warning.

Returns exit code 1 if any matching issues are found.

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xcresult-26.1.0.tar.gz (20.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

xcresult-26.1.0-py3-none-any.whl (23.6 kB view details)

Uploaded Python 3

File details

Details for the file xcresult-26.1.0.tar.gz.

File metadata

  • Download URL: xcresult-26.1.0.tar.gz
  • Upload date:
  • Size: 20.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.3 CPython/3.12.13 Darwin/25.5.0

File hashes

Hashes for xcresult-26.1.0.tar.gz
Algorithm Hash digest
SHA256 16f3c348dd79664e4c10ba942fa9d6956066b3655075a12d224a3c09ddbd0c55
MD5 0a8241f6f5b98932ce4e5cdac690c262
BLAKE2b-256 3d2200f26f6f0081c5fae52594fb871d7fe22bf575baba746d2749c94d94038e

See more details on using hashes here.

File details

Details for the file xcresult-26.1.0-py3-none-any.whl.

File metadata

  • Download URL: xcresult-26.1.0-py3-none-any.whl
  • Upload date:
  • Size: 23.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.3 CPython/3.12.13 Darwin/25.5.0

File hashes

Hashes for xcresult-26.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9a7082eb5e8cf45d61430c8f5eff3b4c75dd1c22fa01a1abeb552b76e83a81c6
MD5 d68d854129c015b030681eecf5f4967e
BLAKE2b-256 1774d5069435d68b0dd1802157aca96edc320095ecc4688f7d1bba91733d2b67

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

26.1.0 This release

2 files

26.0.5

2 files

26.0.4

2 files

26.0.3

2 files

26.0.2

2 files

26.0.1

2 files

26.0.0

2 files

16.3.2

2 files

16.3.1

2 files

16.3.0

2 files

16.2.1

2 files

16.2.0

2 files

16.1.0

2 files

16.0.5

2 files

16.0.4

2 files

16.0.3

2 files

16.0.2

2 files

16.0.1

2 files

16.0.0

2 files

15.4.0

2 files

15.3.1

2 files

15.3.0

2 files

15.1.4

2 files

15.1.3

2 files

15.1.2

2 files

15.1.1

2 files

15.1.0

2 files

15.0.0

2 files

13.0.0

2 files

12.5.0

2 files

12.4.1

2 files

12.4.0

2 files

0.4.0

2 files

0.3.0

2 files

0.2.0

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page