0

In our company we have multiple test stages:

  • unit and integration tests (CI build)
  • application tests (all calls to other systems are mocked)
  • system tests (interacting with other systems)

all builds run on TeamCity

As soon as a build fails, one developer has to inform the responsible person which broke the tests. The tests get fixed and run successful again.

The thing is that we assign the role of the "test-fixer" every day to a new developer. He has to take a look at the failed tests and assign them to the person who broke it. This work can be quite annoying since it involves a lot of chatting and stack trace reading.

Is there any tool which makes it easier to manage/assign failed tests? Or whats the best practice to get more stable builds/tests?

We usually run the unit and integration tests before we push to the trunk. But to notice that you broke a application or system test you have to visit the TeamCity page.

  • 2
    I don't know about TeamCity but on TFS there is the concept of a gated build whereby if any of the unit tests fail, the code doesn't get committed to the source code repository. – Robbie Dee May 16 '16 at 11:29
  • 1
    Looks like TeamCity has a similar feature too – Robbie Dee May 16 '16 at 11:31
  • @Robbie Dee: In our team we have that too: a failed test on any supported platform is enough to stop commit to the source code repository. – Giorgio May 16 '16 at 11:44
  • This is the perfect solution for the first test stage. But how could I achieve fast test fixing in the other, more abstract test stages? – Adrian Krebs May 16 '16 at 11:49
  • @AdrianKrebs Can you run your tests locally on a dev machine? Quickly? – Daenyth Jun 15 '16 at 22:01
5

Teamcity will tell you all of the commits that triggered the build. Get a list of names of the people making those commits, and assign the task to all of them.

  • By using the Teamcity IDE plugin? Or how get the affected people noticed? – Adrian Krebs May 16 '16 at 11:37
  • I don't know about an IDE plugin. Just go to the teamcity web page for a project. Depending on which page you're on, there's a notebook tab titled "Changes" or one titled "Change Log" that will show what as changed for each build. – Bryan Oakley May 16 '16 at 13:48
0

To let developers know that they broke something, you can use one of the build notification tools. TeamCity has a desktop notifier bundled with it. This app will show the status of selected builds in tray area at all times.

There are also similar tools for other CI servers, like Catlight or CCMenu/CCTray.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.