ASP.NET Webサービスにログインできるかどうかをテストするユニットテストを作成しました。 Webサービスはうまく動作し、ログイン処理さえします。私は、Visual Studioを通じて自分のWebサービスを実行しているユニットテストでasp.net Webサービスに接続中に例外がスローされる
The URL specified ('http://www.foo.com/') does not correspond to a valid directory. Tests configured to run in ASP.NET in IIS require a valid directory to exist for the URL.
、プロジェクトはまだ開発中ですので、:それは私にエラーを与えている私のテストを通じて、それに接続しようとしてしかし
。
これは私のテストコードです:事前に
[TestMethod()]
[HostType("ASP.NET")]
[UrlToTest("http://www.foo.com/")]
public void Login_Test_It_Fails_If_GUID_IS_Wrong()
{
//Arrange
Service service = new Service();
string pGUID = string.Empty;
string connectionSQL = @"XXXXXXXXXX";
bool targetOutput = false;
//Act
targetOutput = service.Login(pGUID, connectionSQL);
//Assert
Assert.IsFalse(targetOutput);
}
感謝。
Webサービスに接続している場合は単体テストではなく、統合テストです。 Loginメソッドのロジックをテストするだけの場合は、サービスをインスタンス化せずにそのクラスをテストして、そのクラスを(サービスに注入できる)別のクラスに抽出する必要があります。 – Aidan
ユニットテストは本当に統合テストを行うべきですか? – Stefan
はい、そうではありません、私はユニットテスト/統合テストにはまったく新しいです、実際これは私の最初の実験です。私は実際にテストケースを実装したことはありませんが、この理論に精通しています。しかし、これが統合テストであるとしましょう。なぜそれは働いていないのですか? – Jonny