skillfed

teamcity-messages

Send test results to TeamCity continuous integration server from unittest, nose, py.test, twisted trial, behave (Python 2.6+)

teamcity-messages v1.33 746.0K downloads/30d#5,170 on PyPI140
Permissive license Apache 2.0 Active released

What it is and what it does

teamcity-messages bridges Python test frameworks and JetBrains TeamCity by translating test results into TeamCity service messages. It integrates with unittest, pytest, nose, Django, Twisted Trial, Behave, Flake8, and PyLint, allowing test output, failures, and skips to appear natively in TeamCity's build logs and UI. Most frameworks auto-detect TeamCity via the TEAMCITY_VERSION environment variable; unittest and some others require explicit runner substitution.

The package has no external dependencies and installs as a lightweight wheel. It's been actively maintained since 2008, with recent updates for Python 3.12 and compatibility fixes for newer tool versions (coverage 7.5+, flake8 5.0+, pylint 2.12+). It's suitable for teams already using TeamCity who want seamless test reporting from Python projects.

Use it for:

  • Report unittest test results directly to TeamCity build logs without manual parsing or custom scripts
  • Integrate pytest runs into TeamCity CI pipelines with automatic test hierarchy and failure details
  • Surface Flake8 linting violations as TeamCity build problems during continuous integration
  • Report Behave BDD test outcomes to TeamCity for behavior-driven development workflows
  • Capture PyLint code quality checks in TeamCity build status and test reporting
  • Enable Django test runner to report results to TeamCity when using Django 1.6+

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Sends test results and build status from Python test frameworks (unittest, pytest, nose, Django, Twisted, Behave, Flake8, PyLint) to JetBrains TeamCity CI servers via service messages.

Yes, if you use TeamCity and Python test frameworks. Low install friction, no dependencies, active maintenance, and permissive license make it a straightforward choice for TeamCity users. Not relevant if you use other CI systems (Jenkins, GitHub Actions, GitLab CI) or don't use TeamCity.

Install

teamcity-messages on PyPI

pip

pip install teamcity-messages

uv

uv add teamcity-messages

poetry

poetry add teamcity-messages

Installing teamcity-messages

Before you install

Low friction: pure Python wheel with no runtime dependencies. Actively maintained with recent release (January 2025) and ongoing compatibility updates for modern Python versions.

License in practice

Apache 2.0 permissive license allows use in commercial and open-source projects without significant restrictions.

Quickstart

pip install teamcity-messages

import unittest
from teamcity.unittestpy import TeamcityTestRunner

runner = TeamcityTestRunner()
unittest.main(testRunner=runner)

Must be running under a TeamCity build environment (detected via TEAMCITY_VERSION environment variable) for service messages to be sent; otherwise behaves as a pass-through.

Verify before relying

  • Whether pytest and nose plugins are auto-discovered or require explicit configuration beyond environment detection
  • Exact Python version support range (classifiers list 2.7 and 3.6+ but requires_python is unspecified)

Package facts

License Apache 2.0 (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies none
Maintenance actively maintained — 561 days since the last release
Last repo commit
First released
Downloads 745,984/month — #5,170 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: teamcity_messages-1.33-py3-none-any.whl

Keywords: unittest, teamcity, test, nose, behave, flake8, py.test, pytest, jetbrains

Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 2.7Programming Language :: Python :: 3.10Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development :: Testing

Tags

teamcity test reportingunittest teamcity integrationpytest teamcity pluginci build status reportingjetbrains teamcity pythontest results to teamcitynose flake8 teamcity
ci-integrationtest-reportingteamcity

More Testing packages