0

たとえば、一連の回帰テストがあり、オブジェクトの1つ(DTO)のプロパティをintからdecimalに変更することにした場合、他のすべての変更を行い、テストは通常​​どおり合格します。しかし、このプロジェクトがソース管理下にある場合(特にVSS)、この小さな変更により、何か奇妙なことが起こります...

この質問に似ています

Visual Studioでのテストは個別に成功し、セットで失敗します

しかし、少し異なります。この変更を加えて、テストを実行しようとすると、この新しいデータ型の周りにアサートがあるテストは失敗しますが、[デバッグチェック済みテスト]をクリックして、以前に失敗したテストを実行すると、合格します。テストコード/etcに変更はありません

なぜこれが起こっているのか誰かが知っていますか?私はソース管理の外で作業するのが嫌いですが、私のテストが信頼できない場合...なぜこの場合にそれらを持っているのですか...そして私はテストコードのために生きています:P

4

1 に答える 1

1

質問の年齢を考えると、それがまだあなたにとって問題であるとは思えませんが、ソース管理下にあるbinまたはobjフォルダー、またはそれらの中にあるアセンブリがあるかどうか疑問に思います。

その場合、(MSTestが実行される前に)アプリをコンパイルすると、ソース制御のアセンブリは読み取り専用モードになり、コンパイラによってオーバーライドされないため、テストは古いバイナリに対して行われます。

于 2009-08-06T05:53:15.737 に答える