[SOFT] 如何整合 TeamCity 與 Boost Unit Testing Framework

上次介紹的 TeamCity 預設是不支援 Boost Unit Testing Framework 的,需要額外的 plugin 才能將Boost UTF 的測試報告整合進 TeamCity 中。

首先先到 TeamCity 官方網站下載 plugin,檔案在
http://confluence.jetbrains.net/display/TW/Cpp+Unit+Test+Reporting
裡面有一個 teamcity-boost-1.2.zip for Boost.Test library,下載回來之後解壓縮可以得到三個檔案

teamcity_boost.cpp
teamcity_messages.cpp
teamcity_messages.h

只要將這三個檔案加入你原有的 testing project 中即可,不需更改任何設定。

咦,這麼神奇,為什麼這三個檔可以達到這種效果,答案是它是用了 UTF 中的Global fixture,如果你不知道什麼是 fixture,可以先去查詢一下軟體測試的相關文章。這個 Global fixture 會去處理每個Test Case的測試結果,並加以回報給 TeamCity,整體的整合度還蠻高的,可以看到有那些 Test Case,有那些 PASS 以及那些 FAILED,當然FAILED 的訊息也會完整的呈現。

Related posts:

  1. [SOFT] TeamCity – 好用的 Continuous Integration 持續整合工具 http://www.jetbrains.com/teamcity/index.html 持續整合是軟體開發時相當重要的一環,透過持續整合可以了解目前專案的狀態,包含是否能正確編譯、通過測試,甚至是整體的整合是否也運作良好。在現實的軟體開發環境中,其實很有可能因為修改了一行程式碼,便讓整個專案陷入無法編譯或運行結果不正確的狀態,而如果這個專案又是多人開發且高度相依,更有可能會影響到別人的作業。 不但影響別人的工作流暢性,使其離開神馳(flow)的狀態,更會讓程式設計師進入一種非"愉悅"的狀態。而程式設計師一但離開神馳或著進入非愉悅狀態,生產力將大幅下降(請參考Refactoring to Patterns及Peopleware)。 更甚者,每每到了產品要Release的時候,才發現整合不起來,導致在緊要關頭呈現兵荒馬亂的慘況(且嚴重影響士氣)。 以往要做到持續整合(Daily Build + Daily...
  2. [SOFT] FireScrum – 好用的免費SCRUM軟體 FireScrum 是我目前用過最好用的SCRUM軟體,而且重點是完全免費且open source。FireScrum是一Web-based的軟體,建構在Java, Tomcat, Red5 上面,雖然安裝時要裝蠻多東西的(JDK, Tomcat, Red5, PostgreSQL),不過使用後就會發現還蠻值得的。。 http://www.firescrum.com/...
  3. [SOFT] 高效程式開發筆記 #1 – Thread Profiler 要打造一個效能良好的 Multi-Thread Application 是難度相當高的一件事,一般來說第一個會碰到的問題就是因為 synchronization objects 的 contention 造成的效能下降,通常可以用 atomic...

Related posts brought to you by Yet Another Related Posts Plugin.

You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>