2

io:format/2 を使用して情報を出力すると、角かっこの間のコンテンツが静かに破棄されます。

次の例を参照してください: 1) テスト スイート

-module(ioformat_SUITE).
-compile(export_all).
all() ->
    [test_ioformat].

test_ioformat(_) ->
    Expected = 
        [
         <<"NoMethod <ATestMessage>\r\n">>
        ],
    io:format("ExpectedASCII:~n~p~n",[Expected]),
    io:format("ExpectedBINARY:~n~w~n",[Expected]).

2) テスト スイート
ct_run -suite ioformat_SUITE を実行します。

3) テスト ケースのログを確認する

予期されるASCII:

[<<"NoMethod \r\n">>]

ExpectedBINARY: [<<78,111,77,101,116,104,111,100,32,60,65,84,101,115,116,77,101,115,115,97,103,101,62,13,10>>]

=== 2012-09-03 08:48:04 に終了

4) ログに「ATestMessage」が存在しないことがわかります。このコンテンツは、common_test によって黙って破棄されます。

これは common_test のバグですか? これに対する回避策はありますか?

ありがとう!

4

1 に答える 1

3

Common Test があなたのメッセージを食べていないことは確かです。ログをブラウザで開いている場合は、ページのソース コードを確認してください。ブラウザによってレンダリングされていないだけで、HTMLタグがそこにあるに違いありません。どうですか:

Expected = 
    [
     <<"NoMethod &lt;ATestMessage&gt;\r\n">>
    ],
于 2012-09-03T07:27:23.130 に答える