FUKUDA Fumiki
ffuku****@ntes*****
2002年 7月 11日 (木) 16:36:39 JST
επιστημηです。 --- "[Cuppa-users:95] Re: テストデータを外から食わす" / FUKUDA Fumiki / 2002/07/11 13:13:12 +0900 --- >それっぽいのができました。最新の CppTestCase だと、こう書けます: > > // テスト対象をコール > Calculator c; > int result = c.calculate(x,y,op); > // *tc_ から testMethod/testCase にある "result" と名付けられた assert > // 条件を取り出し、resultと比較せよ。 > CPPUNIT_ASSERT_NAMED_TESTCASE(*tc_, testMethod, testCase, "result", result); さらに今しがたできたばっかりの CppTestCaseProxy を使うと: void testCalculate() { CppTestCaseProxy proxy(tc_,"testCalculate"); // 全テストケースに対し... for ( unsigned i = 0; i < proxy.getCountOfTestCases(); ++i ) { proxy.setTestCase(i); // 入力パラメータを取得 CppTestCase::params_type params = proxy.getTestCaseParams(); int x = atoi(params["var1"]); int y = atoi(params["var2"]); char op = params["opt"][0]; // テスト対象をコール Calculator c; int result = c.calculate(x,y,op); // 検証 CPPUNIT_ASSERT_TESTCASEPROXY(proxy, "result", result); } } 裸のCppUnit並に簡単。うきうき。 仮称ですが、名前を付けました。 朱鷺 : とき : Toki : Test On data-Centric Interface # 人身御供はいないか? -----:-----:-----:-----:-----:-----:-----:-----:-----:----- FUKUDA (episteme) Fumiki -- magical, but never a magic...