先ずは、現在のクラス図を示す。
「TextTestRunner」をベースに、シンプルな構造とした。
テスト実行件数をどこで把握しているか調べた結果、「TestResultCollector」というクラスに、それらしいものが存在している。ということで、「TestResultCollector」から下記の値を取り出し、GUIに貼り付けることにした。
class CPPUNIT_API TestResultCollector : public TestSuccessListener
{
public:
~ 中略 ~
virtual int runTests() const;
virtual int testErrors() const;
virtual int testFailures() const;
virtual int testFailuresTotal() const;
~ 中略 ~
};
問題は、「TestResultCollector」が「TestRunnerEE」に隠蔽されているため、GUIから直接参照することができない。
「TextTestRunner」を参照した所、テスト結果表示用クラス「CompilerOutputter」が存在している。
これに習って、「EEOutputter」を追加し、「TestRunnerEECore」 /GUI間の橋渡しにすることにした。
「EEOutputter」を追加し、GUIでテスト結果を表示する様修正し、結果を確認。
「TextTestRunner」を参照した所、テスト結果表示用クラス「CompilerOutputter」が存在している。
これに習って、「EEOutputter」を追加し、「TestRunnerEECore」 /GUI間の橋渡しにすることにした。
「EEOutputter」を追加し、GUIでテスト結果を表示する様修正し、結果を確認。
ちなみに、動作確認用にテストクラスを2個、テストケースを6件追加している。テスト結果の内訳は下記の通り。
(1)テストケース数 : 6件
(2)エラー: 1件
(3)失敗 : 3件
■実行前
■実行後
以上、無事に完成した。
次は、プログレスバーの表示にとりかかる。
0 件のコメント:
コメントを投稿