0

これが私の Q: 3 つの短いリストを長いリストに連結する方法をテストする必要があります。そして、私は(pex)短いリストのいずれもnullではないと仮定しました(文は以下にリストされています)。

PexAssume.IsTrue(third != (IList<int>)null, "third");
PexAssume.IsTrue(first != (IList<int>)null, "first");
PexAssume.IsTrue(second != (IList<int>)null, "second");

しかし、テストは次のように実行されました: pex によって生成されたテスト ケースはすべてゼロのリストです。これは例です: 最初の {0,0} {0} {0}

秒 {0} {0,0} {0}

3 番目の {0,0} {0} {0,0}

結果 {0,0,0,0,0} {0,0,0,0} {0,0,0,0}

そして、ここに私の質問があります: PEX によって生成されたテスト ケースを充実させるための仮定を設定して、0 がそれほど多くならないようにする方法を教えてください。

ありがとう!

4

1 に答える 1

1

Pex は、関数を完全にテストするために必要なものに基づいて値を生成します。0 のリストを生成しているという事実は、リスト内の特定の値が関数にとって重要ではないことを意味します。リスト内の値を含む関数にいくつかの if ステートメントを追加して、Pex に 0 だけではないリストを強制的に生成させることができますが、実際にはすべきではありません。

TL;DR 心配しないでください。テストでは 0 は問題になりません。

于 2011-12-08T17:30:26.450 に答える