close
先聲明
本方法不是最好的
自己用爽的而已

1.首先要先讓 cppunit 將測試完的結果產出 xml 檔
例:
        CPPUNIT_NS::TestResult controller;
        CPPUNIT_NS::TestResultCollector result;
        CPPUNIT_NS::BriefTestProgressListener progress;
        controller.addListener( &result );
        controller.addListener( &progress );

        CPPUNIT_NS::TestRunner runner;
        runner.addTest( MyTest::suite() );
        runner.run(controller);

        CPPUNIT_NS::CompilerOutputter compiler_outputter( &result, CPPUNIT_NS::stdCOut() );
        compiler_outputter.write();

        std::string xsl = "./report.xsl";
        std::ofstream file("./tests.xml");
        CPPUNIT_NS::XmlOutputter xml_outputter(&result, file, "utf-8");
        xml_outputter.setStyleSheet(xsl);
        xml_outputter.write();

2.接著要讓 xml 檔顯示成 HTML 的樣子的話要有 xsl,xsl 只要跟 xml 放在一起,
再打開 xml 就會顯示成 xsl 所定義的 HTML 的樣子,xsl 想要的話可以自己寫,
當然像我這樣的懶人一定是用別人寫好得啦~
到 cppunit 的 sourceforge 網站找到 cppunit-cvs-1.12.0.tar.gz 下載
解壓縮進入 contrib\xml-xsl 資料夾裡
就會發現有寫好得 report.xsl 囉!

3.最後在 CruiseControl 中用 artifacts 的方式將 cppunit 產生的 tests.xml 和 下載來的 report.xsl 放在一起
然後在 dashboard 上直接開 xml 起來看就可以了!
CruiseControl 的 config.xml artifacts 例:

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 JohnDX 的頭像
    JohnDX

    我要回家想一想~

    JohnDX 發表在 痞客邦 留言(0) 人氣()