ASP.NET Core 集成測試


集成測試

集成測試,也叫組裝測試或聯合測試。在單元測試的基礎上,將所有模塊按照設計要求(如根據結構圖)組裝成為子系統或系統,進行集成測試。
實踐表明,一些模塊雖然能夠單獨地工作,但並不能保證連接起來也能正常的工作。一些局部反映不出來的問題,在全局上很可能暴露出來。

摘自百度百科

ASP.NET Core 集成測試

新建一個 ASP.NET Core Webapi 項目:

修改一下自帶的ValuesController

public class ValuesController : Controller
{
	public int Add([FromQuery]int a,[FromQuery] int b)
	{
		return a + b;
	}
}

用Postman測試一下:

經過測試我們的API是沒有問題的。

添加一個xUnit測試項目

添加一個Nuget Microsoft.AspNetCore.TestHost包:

給測試項目添加webapi項目的引用:

添加如下測試代碼:

private readonly HttpClient _client;
public UnitTest1()
{
	var builder = new WebHostBuilder().UseStartup<Startup>();
	var testServer = new TestServer(builder);
	_client = testServer.CreateClient();
}
[Fact]
public async Task Test1()
{
	var result = await _client.GetAsync("Values/Add?a=1&b=2");
	result.EnsureSuccessStatusCode();

	var data = await result.Content.ReadAsStringAsync();
	Assert.Equal("3", data);
}

運行一下:

可以看到,一個簡單的集成測試已經通過了。

文檔參考

官方文檔 https://docs.microsoft.com/en-us/aspnet/core/testing/integration-testing
Demo:https://github.com/stulzq/BlogDemos/tree/master/IntegrationTests


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM