0

首先,我想在 stackoverflow 上欢迎大家,因为这是我的第一个问题。
我在 Visual Studio 2005 上使用 CppUnit 生成输出 *.xml 文件时遇到了困难。当我使用 F5 或 Ctrl+F5(开始调试或不调试开始)运行代码时,它不会创建报告文件。但是当我“手动”运行它(通过 /debug 中的 *.exe 文件)时,会创建报告文件。可能是什么原因?

测试应用程序.cpp:

#include "Test_myFuzzy.h"

#include <cppunit/ui/text/TestRunner.h>
#include <cppunit/XmlOutputter.h>

int main(){
    CppUnit::TextUi::TestRunner runner;

    std::ofstream ofs("tests.xml"); 
    CppUnit::XmlOutputter* xml = new CppUnit::XmlOutputter(&runner.result(),ofs); 
    xml->setStyleSheet("report.xsl");
    runner.setOutputter(xml);

    runner.addTest(Test_myFuzzy::suite());
    runner.run();

    return 0;
}

感谢你的回答!

4

1 回答 1

0
std::ofstream ofs("tests.xml"); 

您没有指定 test.xml 文件的创建位置。因此,默认情况下,它将在 exe 所在的同一文件夹中创建。

解决此问题的一种方法是指定创建/查找文件的位置,"C:\test.xml"或者您在项目文件夹中进行搜索,因为该文件可能是在调试箱中创建的。

于 2012-07-31T19:18:14.100 回答