2

Nunit3 バージョンで提供されている params 引数を使用して、複数のパラメーターを渡しています。

ただし、C# テスト フィクスチャではそれらを取得できません。検索しましたが、正しい結果が得られませんでした。

誰かがC#でこれらのparam引数を取得する方法についての指針を教えてくれますか.

どんな助けでも大歓迎です。前もって感謝します。

4

1 に答える 1

2

まず、NUnit コンソール 3.4.1 と NUnit Framework 3.4.1 の両方を使用していることを確認してください。

あなたのコマンドラインオプションは--params:Code=XXX --params:Date=2011-05-16正しいようです。複数のパラメータをセミコロンで結合することもできます。--params:Code=XXX;Date=2011-05-16

単体テストでパラメーターにアクセスするには、テストで を使用TestContext.Parameters.Get("Code")します。string Get(string key, string default)T Get(string key, T default)を行うaもありConvert.ChangeTypeます。

まだ十分に文書化されていないため、詳細については機能を実装したプル リクエストを参照してください。

これがテストの例です。

[Test]
public void TestCommandLineParameters()
{
    var code = TestContext.Parameters.Get("Code", "<unknown>");
    var date = TestContext.Parameters.Get("Date", DateTime.MinValue);

    TestContext.WriteLine($"Fetched test parameters {code} and {date}");
}

コマンドラインとNUnit 3.4.1で実行したもの、

nunit3-console.exe --params:Code=XXX --params:Date=2011-05-16 .\nunit-v3.dll

出力では、私は見る

=> nunit.v3.TestParamsTest.TestCommandLineParameters
Fetched test parameters XXX and 2011-05-16 12:00:00 AM
于 2016-07-13T11:48:59.010 に答える