TeamCity
 
You are viewing the documentation for an earlier version of TeamCity.

Code Quality Tools

Last modified: 20 April 2023

TeamCity comes bundled with a number of tools capable of analyzing the quality of your code and reporting the obtained data. If you are using the tools which are currently not supported, TeamCity can be configured to run them and display their report results.

Bundled Tools



Generally, the tools are configured as Build Runner and the results are displayed on the Build Results page as well as in the IDE for some of the tools. You can also configure builds to fail based on the results and view the trends as statistics charts.

Java Tools



IntelliJ IDEA-powered Code Analysis Tools



These are available when you have an IntelliJ IDEA project (.idea directory or .ipr file) or a Maven project file (pom.xml) checked into your version control.

Code Coverage tools



These are configured in the dedicated sections of the build runners.

.Net Tools



ReSharper-powered Tools



These are available if you use Visual Studio.

Code Coverage



The following code coverage tools are supported for .Net Process Runner, MSBuild, MSTest, Nant and NUnit build runners:

See more on Configuring .NET Code Coverage.

Reporting External Tools Results in TeamCity



If you need to use non-bundled tools, you can use TeamCity to import their results and display them in the TeamCity UI.

Supported Report Formats



The external tool reports are supported via the XML Report Processing build feature. See the list of XML Report Processing.

Including HTML Reports



If your reporting tool is not supported by TeamCity directly, you can make it produce reports in the HTML format via a build script and add a build results Including Third-Party Reports in the Build Results.

Importing Code Coverage Results



You can also How To....

Integration with External Tools



TeamCity can also How To... with external build tools or tools generating some report/providing code metrics which are not yet supported by TeamCity. The integration tasks involved are collecting the data in the scope of a build and then reporting the data to TeamCity.