Bug-Tracking Integration

Top  Previous  Next

Code Collaborator can integrate with external issue-tracking systems such as TeamTrack, Bugzilla, JIRA, and FogBugz.  Integration can be done in several ways depending on the type of integration you require.

Hyperlinked Issues

Code Collaborator can identify external issue references in titles, custom fields, comments, defects, and more, and automatically hyperlink them to the right web page in your external issue tracker.

For example, here at Smart Bear we use the word "Case" followed by a number to identify a issue in our bug system.  So we configured Code Collaborator to search for text in the (regular expression) form of "\bcase\s*(\d+)" and automatically hyperlink the number part (in the grouping symbols) to FogBugz, our external issue tracker.

See this section for details on how to do this configuration.

Referring to issues in the Review Overview

It is common to want to associate one or more issues with each review.  The easiest way to do this is to create a custom review field and set the regular expression validator to ensure that only properly-formatted issues are entered in.

You should also set up the issue-hyperlink feature described above so that these fields are interactive.

Externalizing: Moving a defect from Code Collaborator to an external issue tracker

Sometimes you find a defect during code review that you don't want to fix just now.  In this case you want to move the defect from Code Collaborator into an external issue tracker.  You also want to record this state and audit trail in the review.

The externalized defects feature allows you to do just that.  See that section of the manual for details.

It is unusual to integrate beyond this point

This is the extent to which most of our customers go with integration.  Most people don't want code review defects mirrored into an external issue tracker because these defects were never "delivered."

For example, if you had done the code review side-by-side with someone, you wouldn't enter in defects then -- you'd just fix them!

Usually the QA department runs off the issue tracker for verification.  How can QA verify something that wasn't necessarily externally broken (e.g. some function wasn't checking input values carefully) or something just in the code (e.g. some method wasn't documented properly).

Mirroring defects from Code Collaborator into an external issue tracking system

You can use the server-side trigger that runs every time a defect is added, edited, marked fixed, or deleted.  Your trigger would locate the corresponding external issue record and update it.  This integration takes a bit of work.  We don't have it pre-built because everyone's external issue-tracking system is different.

For an example see this scripting tutorial.