代碼:GitHub git
參考地址:https://github.com/Acumatica/xunit.autofac github
xunit +autofac進行單元測試 async
①建立一個類庫ide
引用nuget:單元測試
xunit
xunit.runner.visualstudio 能夠在vs中跑的包
xunit.autofac
②建立一個ServiceRegistration 類測試
public class ServiceRegistration : Module //Autofac { /// <summary> /// 依賴注入 /// </summary> /// <param name="builder"></param> protected override void Load(ContainerBuilder builder) { builder.RegisterType<JwtUserRepository>().As<IJwtUserRepository>(); builder.RegisterType<JwtUserService>().As<IJwtUserService>(); } }
在程序集中註冊ui
添加測試類:this
/// <summary> /// Jwt用戶表應用層服務測試 /// </summary> public class JwtUserAppService_Test { /// <summary> /// 依賴注入 /// </summary> private readonly IJwtUserService _jwtUserService; public JwtUserAppService_Test(IJwtUserService jwtUserService) { this._jwtUserService = jwtUserService; } /// <summary> /// 所有用戶 /// </summary> /// <returns></returns> [Fact] public async Task GetListAsync_Test() { List<JwtUser> list = await this._jwtUserService.GetListAsync(); } /// <summary> /// 用戶名和密碼獲取用戶 /// </summary> /// <param name="inDto">inDto</param> /// <returns>OutDto</returns> [Fact] public async Task GetJwtUserAsync_Test() { AuthenticateInDto inDto = new AuthenticateInDto { UserName = "sealee", PassWord = "123" }; JwtUser model = await this._jwtUserService.GetJwtUserAsync(inDto); } //添加刪除修改,都須要新建一個類進行測試 } }
打開測試:spa