私はC#ユニットテスト(VSテストツールを使用)を作成しました。とりわけ、そのような例外をチェックするテストがあります:私は私のユニットテストファイルを開き、コンテキストメニューの「ファイル名を指定して実行テスト」をクリックするとVisual Studioテストエクスプローラで外国語のテストを実行します
Assert.AreEqual("Object reference not set to an instance of an object.", e.Message);
は、すべてが正常に動作します。 Visual Studioのテストエクスプローラを使用して「Run tests」をクリックすると、例外のメッセージが異なるという例外が表示されます。実際には、それは私がチェックしているものと同じですが、別の言語で同じです。両方の場合に実行されるテストは同じであり、言語の変更やその他の単純なロジックテストはありません。私のOSは英語版、Visual Studioでもあります。私は別のソリューションで同様のテストを行い、すべて正常に動作します。このソリューションと、私が単体テストを書いているプロジェクトの1つは、この外国語のシステムを持つ同僚によって作成されたものです。しかし、私はどこでもそのような設定を見つけることができません。誰かがこれらがどこにあるか考えていますか?テストを英語で常に実行するにはどうすればよいですか?
を使用するよりも、きれいだ、私は単にテストの言語を制御する方法を知りたいと思ったし、それはどのように外国語を持つことが可能です私のシステム全体が英語であるとき。しかし、あなたが正しいです、私は何かを使用する必要がありますテスト言語中立、良い点。 – Antiohia
言語に依存しないようにするには、奇妙な整数を使用できますが、列挙型にバインドしてください。次に、テキストの中でどのような例外が発生しているかを確認します。 –