Analyze and Report on Build Details and Build Coverage Using the Build Perspective

By using the Build perspective, you can view just the measures, dimensions, and attributes in the SQL Server Analysis Services cube for Visual Studio Team Foundation Server that pertain to the build process. For example, you can use these measures to determine how many builds are failing and how much of the code changed within a build.

The Build perspective is based on the relational tables that enable reporting on builds as either a property of the build, code coverage, or a changeset in version control. For more information, see Build Details Tables, Build Project Tables, Build Coverage Tables, and Build Changeset Tables.

Build Measure Group

By using the Build perspective, you can create reports that answer the following questions:

Status reports:

  • Which builds failed and which builds succeeded?

  • Which builds reflect a significant number of changes to the code?

  • Which builds are ready to install?

Trend reports:

  • What is the status of all builds over time?

  • How much of the code was executed by the tests over time?

Note

If your data warehouse for Visual Studio Application Lifecycle Management (ALM) is using SQL Server Enterprise Edition, the list of cubes will include Team System and a set of perspectives. The perspectives provide a focused view of the data so that you do not have to scroll through all of the dimensions and measure groups that are defined for the whole Team System cube.  

In this topic

  • Example: Build Status Report

  • Build Measures

  • Dimensions and Attributes in the Build Perspective that Support Filtering and Categorization

  • Required Activities to Manage Builds and Tests

Example: Build Status Report

By using PivotChart reports in Excel, you can display the build status over time, similar to the data in the following illustration.

Build Status report

The process templates for Microsoft Solutions Framework (MSF) v5.0 include the Build Status report in Excel. For more information, see Build Status Excel Report.

Back to top

Pivot Field Selection and Filters

Pivot Fields for Build Summary Status report

You can create the summary report for build status by performing the following steps:

  1. In Excel, connect to the Analysis Services cube for Team Foundation Server, and insert a PivotChart report.

    For more information, see Create a Report in Microsoft Excel for Visual Studio ALM.

  2. Right-click the chart, click Change Chart Type, click Area, and then click Stacked Column.

  3. For each report filter, right-click each of the following fields, specify the hierarchies, weeks, or other elements of interest, and then drag the field to the Report Filter area.

    • Team Project Hierarchy from the Team Project dimension

    • Year Week Date from the Date dimension

    • Build Definition Name from the Build dimension

  4. In the Date dimension, expand More fields, and drag the Date, Week, or Month fields to the Axis Fields (Categories) area to specify how granular a report you want to generate.

  5. Drag the Build Details Count field from the Build Details measure group to the Values area.

  6. Drag the Build Status Name field from the Build Status dimension to the Legend Fields (Series) area.

  7. (Optional) Filter the Build Status Name field to display only those builds that Failed, Partially Succeeded, or Succeeded.

Back to top

Build Measures

The following table describes the measures that are associated with builds. The Build Coverage measure group requires that the test team instrument tests to gather code coverage data. For more information, see Required Activities for Managing Builds and Tests later in this topic. For an example of a report that uses several of these measures, see Build Quality Indicators Report.

Measure Group

Measure

Description

Build Details

Build Details Count

Number of times that a specific build has been run.

Build Duration

Number of minutes that the build took to finish.

Build Changeset

Build Changeset Count

Number of changesets in the selected set of builds.

Build Coverage

Blocks Covered

Number of blocks that the selected build covers. If multiple test runs are performed against a build, the build coverage reflects the combined coverage of the runs. However, the runs may cover blocks that overlap.

Blocks Not Covered

Number of blocks that the selected build does not cover. If multiple test runs are performed against a build, the build coverage reflects the combined coverage of the runs. However, the runs may cover blocks that overlap.

Build Coverage

Number of builds that are associated with code coverage statistics.

Lines Covered

Number of lines that the selected build covers. If multiple test runs are performed against a build, the build coverage reflects the combined coverage of the runs. However, the runs may cover lines that overlap.

Lines Not Covered

Number of lines that the selected build does not cover. If multiple test runs are performed against a build, the build coverage reflects the combined coverage of the runs. However, the runs might cover lines that overlap.

Lines Partially Covered

Number of lines that the selected build partially covers. If multiple test runs are performed against a build, the build coverage reflects the combined coverage of the runs. However, the runs might cover lines that overlap.

Build Project

Build Project Count

Number of .csproj files, .vbproj files, and other project files in the selected set of builds.

Compile Errors

Number of compile errors that occurred for the selected builds.

Compile Warnings

Number of compile warnings that occurred for the selected builds.

Static Analysis Errors

Number of static analysis errors that occurred for the selected builds.

Static Analysis Warnings

Number of static analysis warnings that occurred for the selected builds.

Back to top

Dimensions and Attributes in the Build Perspective that Support Filtering and Categorization

You can use the attributes in the following table to aggregate a measure, filter a report, or specify a report axis. These attributes supplement the Team Project and Date shared dimensions that Working with Shared Dimensions describes.

Note

To use the Assembly, Build Flavor, or Build Platform dimension attributes, the test team must publish the test results to the data store for Team Foundation Server. For more information, see Required Activities for Managing Builds and Tests later in this topic.

Dimension

Attribute

Description

Assembly

Assembly

(Published test results only) The name of the code of the application that is tested as part of the build. For more information, see Run Tests in Your Build Process.

Build

Build Definition Name

Name that is assigned to the build definition for which a build was executed.

Build ID

The number that is assigned to the build. Each time that a particular build definition is run, the Build ID is incremented by 1.

Build Name

The name or expression that uniquely identifies a build. For more information, see Work with Build Numbers.

Build Start Time

The date and time when the build started.

Build Type

The reason why the build was run. Build types are associated with the trigger that was defined for the build. Team Foundation Server supports the following types of builds: manual, continuous (triggered by every check-in), rolling (accumulate check-ins until the previous build finishes), gated check-in, and scheduled. For more information, see Specify Build Triggers and Reasons.

Drop Location

The Uniform Resource Locator (URL) for the completed build. A URL specifies the protocol with which web browsers will to locate Internet resources. Each URL includes the name of the server on which the details of the build resides. You can also include the path to a resource.

Build Flavor

Build Flavor

(Published test results only) A name that designates the category of builds that was assigned to a set of completed builds that were published as part of a test run. For example, a build flavor can designate a beta release or final release. For more information, see Command-Line Options for Publishing Test Results.

Build Platform

Build Platform

The name of the platform for which an end-to-end (not desktop) build was made (for example, x86 or Any CPU). For an example of a report that uses this attribute, see Build Summary Report.

For more information, see Define a Build Process that is Based on the Default Template.

Build Quality

Build Quality

The quality of the build. For example, you can rate a completed build's quality as Ready for Deployment, Rejected, or Under Investigation. For more information, see Add or Remove Build Quality Values.

Build Status

Build Status Name

The current state of the build. Valid values are Failed, Partially Succeeded, Stopped, Succeeded, and Unknown. For more information, see Manage Your Builds in Build Explorer.

Build Source Project File

File Hierarchy

The full network path of the source file.

File Extension

The extension of the name of the source file.

Version Control Changeset

Changeset ID

The number that is assigned to the changeset.

Checked In By

The user name of the team member who checked in the changeset.

Description

The check-in comment that is associated with the changeset.

Policy Override Comment

The comment that is provided when a policy is overridden. If a policy was not overridden with a changeset, the field is null.

Back to top

Required Activities to Manage Builds and Tests

To create build reports that contain useful data, team members must perform the following activities to manage builds and tests:

Back to top

See Also

Concepts

Perspectives and Measure Groups Provided in the Analysis Services Cube for Team System

Other Resources

Run Tests in Your Build Process