%UnitTest の結果の表示
テストの結果を、次のいずれかの方法で表示できます。
-
コンソール — 基本的なテスト結果がコンソールに出力されます。
-
%UnitTest.Result.TestAssertOpens in a new tab テーブル — テスト結果が ^UnitTest.Result に表形式で保存され、%UnitTest.Result.TestAssertOpens in a new tab テーブルを介してアクセスできます。
-
管理ポータル — ユニット・テストを実行すると、一連の Web ページで構成されるテスト・レポートが生成されます。テスト・レポートはネームスペース別に編成され、 管理ポータルの [ユニットテスト・ポータル] 領域に表示できます。詳細は、"管理ポータルでの %UnitTest レポートの表示" を参照してください。
プログラムによる %UnitTest の結果の表示
テスト結果を含め、テストのアサーションは、構造化されたデータへのアクセスのために %UnitTest.Result.TestAssertOpens in a new tab テーブルにログ記録されます。このテーブルには以下のフィールドがあります。
論理値 | 意味 |
0 | 失敗 |
1 | パス |
2 | スキップ |
テストの実行に使用された $$$AssertX マクロの名前。先頭の $$$ はテーブルには含まれません。
$$$AssertX マクロに渡した test_description 引数の値。test_description を渡さなかった場合、このフィールドは既定で、$$$AssertX マクロの最初の引数の文字列表現になります。$$$AssertX マクロの引数の詳細は、"%UnitTest.TestCase クラスのマクロ" を参照してください。
テストのアサーションが発生したテスト・クラス内の場所 (label[+offset]^[|"ns"|]doc.ext 形式)。
テストのアサーションの場所に関するトラブルシューティング
特定の状況では、テストのアサーションの場所がクラスに正しくマップされない可能性があります。例えば、すべての場所が生成された INT ルーチン内にある場合です。このような場合は、RunTest()Opens in a new tab の qualifiers 引数に /keepsource および /generatemap 修飾子を指定してテストを実行する必要があります。こうすることで、テスト・マネージャはルーチンの場所をソース・クラスに解決することができます。
管理ポータルでの %UnitTest レポートの表示
テストを実行すると、階層レポートが生成されます。このレポートには実行されたすべてのテストに関連する結果が含まれ、管理ポータルで参照できます。
レポートでテストは合格であると示されている場合、該当する $$$AssertX マクロは true を返し、テストで期待どおりの結果が得られたことを意味します。テストの失敗とは、マクロが false を返し、テストで期待どおりの結果が得られず、テスト対象のメソッドをデバッグする必要があることを意味します。
管理ポータルでレポートを表示するには、以下の手順を実行します。
-
%UnitTest クラスに USER ネームスペースの [ユニットテスト・ポータル] へのアクセス権を付与します。
USER>set $namespace = "%SYS" %SYS>set ^SYS("Security", "CSP", "AllowPrefix", "/csp/user/", "%UnitTest.")=1
Note:セキュリティ上の理由により、このステップを 1 回実行しないと、管理ポータルの [ユニットテスト・ポータル] には移動できません。
-
管理ポータルで、[システムエクスプローラ]→[ツール]→[ユニットテスト・ポータル] に移動して、USER ネームスペースに切り替えます。
-
[ユニットテスト・ポータル] を起動してテスト・レポートを表示するには、[実行] をクリックします。レポートが表示されます。
-
レポートのリンクをたどってドリルダウンし、より具体的な情報を見つけます。
-
最初のページには、すべてのテスト・スイートの要約が表示されます。
-
2 ページ目には、テスト・スイートごとの結果が表示されます。
-
3 ページ目には、テスト・ケースごとの結果が表示されます。
-
4 ページ目には、テスト・メソッドごとの結果が表示されます。
-
最終ページには、テスト・メソッドで使用される各 $$$AssertX マクロの結果が表示されます。
-