Skip to main content

Buildkite Test Analytics collector

Project description

Buildkite Test Collector for Python (Beta)

The official Python adapter for Buildkite Test Analytics which collects information about your tests.

Supported python versions: >=3.8

Supported test frameworks: pytest.

📦 Supported CI systems: Buildkite, GitHub Actions, CircleCI, and others via the BUILDKITE_ANALYTICS_* environment variables.

👉 Installing

  1. Create a test suite, and copy the API token that it gives you.

  2. Add buildkite-test-collector to your list of dev dependencies in setup.py

        extras_require={
            "dev": [
                "buildkite-test-collector"
            ]
        }
  1. Set up your API token

Add the BUIDLKITE_ANALYTICS_TOKEN environment variable to your build system's environment.

  1. Run your tests

Run your tests like normal. Note that we attempt to detect the presence of several common CI environments, however if this fails you can set the CI environment variable to any value and it will work.

$ pytest
  1. Verify that it works

If all is well, you should see the test run in the test analytics section of the Buildkite dashboard.

🎢 Tracing

Buildkite Test Analytics has support for tracing potentially slow operations within your tests (SQL queries, HTTP requests, etc). This library now supports the ability to add tracing information to your test analytics output by using the new spans pytest fixture. See the SpanCollector documentation for more information.

🔜 Roadmap

See the GitHub 'enhancement' issues for planned features. Pull requests are always welcome, and we’ll give you feedback and guidance if you choose to contribute 💚

⚒ Developing

After cloning the repository, install the dependencies:

pip install -e '.[dev]'

And run the tests:

pytest

Useful resources for developing collectors include the Buildkite Test Analytics docs and the RSpec and Minitest collectors.

👩‍💻 Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/buildkite/test-collector-python

🚀 Releasing

  1. Version bump the code, tag and push.
  2. Publish to the Python Package Index:
python3 -m build
python3 -m twine upload dist/*
  1. Create a new github release.

📜 License

The package is available as open source under the terms of the MIT License.

🤙 Thanks

Thanks to the folks at Alembic for building and maintaining this package.

Project details


Download files

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

Source Distribution

buildkite-test-collector-0.1.7.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

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

buildkite_test_collector-0.1.7-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file buildkite-test-collector-0.1.7.tar.gz.

File metadata

  • Download URL: buildkite-test-collector-0.1.7.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.16

File hashes

Hashes for buildkite-test-collector-0.1.7.tar.gz
Algorithm Hash digest
SHA256 555b5b7ef771e4ced23e004899c18f837faaa3b6167f3d129b871f8c2419abdb
MD5 c94fe6c6fa963f7dc7b2febd17e5f2bb
BLAKE2b-256 8c8f75a44af31b481addaf0870fc8aa563a71c6199fbcbe5e8113f024f4e112d

See more details on using hashes here.

File details

Details for the file buildkite_test_collector-0.1.7-py3-none-any.whl.

File metadata

File hashes

Hashes for buildkite_test_collector-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 4eba9667f0c215ac41520bd464e98d1fd195680d3879596622a5305043774f0e
MD5 89ee8ea062f5b3cbb712c7fbd778c8e2
BLAKE2b-256 1c5c1232119676f1715bc31efd4e1433e92b2d00caa3573d6947dccdb09913ee

See more details on using hashes here.

Supported by

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