int main(int argc, char** argv) { // Create the event manager and test controller TestResult controller; // Add a listener that colllects test result TestResultCollector result; controller.addListener(&result); // Add a listener that print dots as test run. BriefTestProgressListener progress; controller.addListener(&progress); TextUi::TestRunner runner; TestFactoryRegistry ®istry = TestFactoryRegistry::getRegistry(); runner.addTest(registry.makeTest()); std::cout << std::endl << " === Running Tests " << std::endl; runner.run(controller); // Print test in a compiler compatible format. std::cout << std::endl << " === Test Results" << std::endl; CompilerOutputter outputter(&result, stdCOut()); outputter.write(); ofstream xmlFile("data/cpptestresults.xml"); XmlOutputter xmlOut(&result, xmlFile); xmlOut.write(); return result.wasSuccessful() ? 0 : 1; }
int main(int argc, char **argv) { // Create the event manager and test controller TestResult controller; // Add a listener that collects test result TestResultCollector result; controller.addListener(&result); // Add the top suite to the test runner TestRunner runner; runner.addTest(TestFactoryRegistry::getRegistry().makeTest()); // Listen to progress TestListener *listener; if (jetbrains::teamcity::underTeamcity()) { // Add unique flowId parameter if you want to run test processes in parallel // See http://confluence.jetbrains.net/display/TCD6/Build+Script+Interaction+with+TeamCity#BuildScriptInteractionwithTeamCity-MessageFlowId listener = new jetbrains::teamcity::TeamcityProgressListener(); } else { listener = new BriefTestProgressListener(); } controller.addListener(listener); // Run tests runner.run(controller); delete listener; return result.wasSuccessful() ? 0 : 1; }
int main(int argc, char **argv) { // Create the event manager and test controller TestResult controller; // Add a listener that collects test result TestResultCollector result; controller.addListener(&result); // Add the top suite to the test runner TestRunner runner; runner.addTest(TestFactoryRegistry::getRegistry().makeTest()); // Listen to progress TestListener *listener; if (JetBrains::underTeamcity()) { listener = new JetBrains::TeamcityProgressListener(); } else { listener = new BriefTestProgressListener(); } controller.addListener(listener); // Run test runner.run(controller); delete listener; return result.wasSuccessful() ? 0 : 1; }
void TestSuiteRunnerImpl:: run(TestSuiteContext* suite, const TestCaseFilter* filter) { resultCollector->startTestSuite(suite->getSuite()); runAllFixtures(suite, filter); resultCollector->endTestSuite(suite->getSuite()); }
/* * Run the test suite, return 0 on success, 1 on error. */ int main(void) { TestResult controller; TestResultCollector result; controller.addListener(&result); BriefTestProgressListener progress; controller.addListener(&progress); TestRunner runner; runner.addTest( TestFactoryRegistry::getRegistry().makeTest() ); runner.run(controller); CompilerOutputter outputter(&result, std::cerr); outputter.write(); return result.wasSuccessful() ? 0 : 1; }
virtual void run() { TestResultCollector collector; // create a test result and add the listeners TestResult result; result.addListener(&collector); // create a test runner TestRunner runner; MyTest test1; MyTest2 test2; runner.addTest(&test1); runner.addTest(&test2); runner.run(result); //RTF_TEST_REPORT(Asserter::format("count: %d", collector.failedCount())); RTF_TEST_CHECK(collector.testCount() == 2, "Checking tests count"); RTF_TEST_CHECK(collector.passedCount() == 1, "Checking passed count"); RTF_TEST_CHECK(collector.failedCount() == 1, "Checking failed count"); }
int main(int argc, char** argv) { TestResult testresult; TestResultCollector collectedresults; BriefTestProgressListener progress; testresult.addListener(&collectedresults); testresult.addListener(&progress); TestRunner testrunner; testrunner.addTest (TestFactoryRegistry::getRegistry().makeTest()); testrunner.run(testresult); CompilerOutputter compileroutputter(&collectedresults, std::cerr); compileroutputter.write(); // Output XML for Jenkins CPPunit plugin /*ofstream xmlFileOut("cppTestBasicMathResults.xml"); XmlOutputter xmlOut(&collectedresults, xmlFileOut); xmlOut.write();*/ return collectedresults.wasSuccessful() ? 0 : 1; }
int main(int argc, char **argv) { TestResult controller; TestResultCollector result; controller.addListener(&result); BriefTestProgressListener progress; controller.addListener(&progress); TestRunner runner; runner.addTest(TestFactoryRegistry::getRegistry().makeTest()); runner.run(controller); // compiler output CompilerOutputter coutputter(&result, stdCOut()); coutputter.write(); // output test result for jenkins std::ofstream ofs("test_result.xml"); CPPUNIT_NS::XmlOutputter outputter(&result, ofs,"UTF-8"); outputter.write(); return result.wasSuccessful() ? 0 : 1; }
void TestSuiteContextImpl:: load( const std::string& path ) { const StringList searchingPaths; __TESTNGPPST_TRY { suite = suiteLoader->load(searchingPaths, path, this); } __TESTNGPPST_CATCH(std::exception& e) { resultCollector->addError ( "test suite \"" + path + "\" can't be loaded : " + e.what() ); throw; }
void JUnitOutput::WriteToFile(const Uri& URI, const TestResultCollector& Results) { // ensure that a new log will be written File output; output.SetLocation(URI); output.Delete(); FileStream out; out.Open(URI, FileAccessMode::Write, FileAccessPriority::DelayReadWrite); if (out.CanWrite()) { //start suites String tag("<testsuites>\n", sizeof("<testsuites>\n")); out.Write(reinterpret_cast<const UInt8*>(tag.c_str()), 0, tag.Length()); for(UInt32 i = 0; i<Results.TestResults().Count(); ++i) { //start a suite tag=String::Format(String("<testsuite error=\"%u\" failures=\"%u\" hostname=\"RadonFramework-TestEnvoirement\" name=\"%s\" tests=\"%u\" time=\"%.3f\" timestamp=\"%s\" id=\"%u\" package=\"%u\">\n",sizeof( "<testsuite error=\"%u\" failures=\"%u\" hostname=\"RadonFramework-TestEnvoirement\" name=\"%s\" tests=\"%u\" time=\"%.3f\" timestamp=\"%s\" id=\"%u\" package=\"%u\">\n")), Results.TestResults()[i].TestsWithError, Results.TestResults()[i].TestsWithFailure, Results.TestResults()[i].SuiteName.c_str(), Results.TestResults()[i].TestResults.Count(), Results.TestResults()[i].TotalTime, "2007-11-02T23:13:49", 0, 0); out.Write(reinterpret_cast<const UInt8*>(tag.c_str()), 0 ,tag.Length()); for(UInt32 j = 0; j<Results.TestResults()[i].TestResults.Count(); ++j) { //start testcase tag=String::Format(String("<testcase classname=\"%s\" name=\"%s\" time=\"%d\">\n", sizeof( "<testcase classname=\"%s\" name=\"%s\" time=\"%d\">\n")), "", Results.TestResults()[i].TestResults[j].Name().c_str(), Results.TestResults()[i].TestResults[j].TimeRequired().Ticks()); out.Write(reinterpret_cast<const UInt8*>(tag.c_str()), 0, tag.Length()); // test failed if (!Results.TestResults()[i].TestResults[j].Passed()) { tag=String::Format(String("<error message=\"%s\" type=\"%s\">%s\n", sizeof( "<error message=\"%s\" type=\"%s\">%s\n")), "", "", ""); out.Write(reinterpret_cast<const UInt8*>(tag.c_str()), 0, tag.Length()); tag="</error>\n"; out.Write(reinterpret_cast<const UInt8*>(tag.c_str()), 0, tag.Length()); } // test raise an exception if (Results.TestResults()[i].TestResults[j].Error()) { tag=String::Format(String("<failure message=\"%s\" type=\"%s\">%s\n",sizeof( "<failure message=\"%s\" type=\"%s\">%s\n")), "", "", ""); out.Write(reinterpret_cast<const UInt8*>(tag.c_str()), 0, tag.Length()); tag="</failure>\n"; out.Write(reinterpret_cast<const UInt8*>(tag.c_str()), 0, tag.Length()); } //end testcase tag="</testcase>\n"; out.Write(reinterpret_cast<const UInt8*>(tag.c_str()), 0, tag.Length()); } //end the suite tag="</testsuite>\n"; out.Write(reinterpret_cast<const UInt8*>(tag.c_str()), 0, tag.Length()); } //end suites tag="</testsuites>\n"; out.Write(reinterpret_cast<const UInt8*>(tag.c_str()), 0, tag.Length()); } }