[Authorize] 属性を追加した Web API があります。これは、以前に行った単体テストが承認されていないために失敗したことを意味します。以下は、基本的なテストと初期化メソッドのサンプルです。
[TestInitialize]
public void CreateServer() {
var config = new HttpConfiguration();
WebApiConfig.Configure(config); // Create the routes
var server = new HttpServer(config);
this.client = new HttpClient(server);
}
[TestMethod]
public void MyThings_GET_Returns_All_MyThings() {
var response = this.client.GetAsync("http://localhost/api/1.0/mythings").Result;
var mythings = response.Content.ReadAsAsync<IEnumerable<MyThing>>().Result;
Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
Assert.AreEqual(4, mythings.Count());
}
私が疑問に思っているのは、テストをログインさせて認証フィルターを通過させる方法があるかどうか、または HttpClient 要求と共に ASPXAUTH Cookie として渡す方法があるかどうかです。または、私が考えていなかった承認を渡す別の方法はありますか?
私が試したものは何も機能していないようで、どこでも役立つ情報を見つけるのに苦労しています.
前もって感謝します。