我正在尝试为我继承的遗留代码创建 API 集成测试。目前我有一段测试代码:重新创建数据库(使用 Fluent Migrations)启动网络应用程序 (Owin.Hosting)调用 api 获取授权令牌对授权端点进行 api 调用如果我跳过第一步并只执行 2) 3) 4),它会完美地工作。我还能够执行步骤 1) 2) 3)(因此 auth API 调用可以与包括的数据库重新创建一起使用),这有点奇怪。我以为我的 web api 工作不正常,但是当我不重新创建数据库时,我可以执行基本路径。然后我想当我重新创建数据库时它可能根本不起作用,但我能够授权用户。我不知道我现在可以尝试什么。[Collection("Database Create collection")]public class RoleControllerTests : IDisposable{ private readonly IDisposable _server; private readonly string _url = new Configuration().ServerUrl; public RoleControllerTests() { _server = WebApp.Start<Startup>(_url); } public void Dispose() { _server.Dispose(); } [Fact] public async Task basic_roles_should_exist_in_the_database() { // Arrange var roleApi = RestClient.For<IRoleController>(_url); IAuthorize auth = new Authorize(); roleApi.AuthenticationHeader = await auth.GetAuthenticationHeaderAsync(); // Act var rolesData = await roleApi.List(); // Assert rolesData.ShouldContain(x => x.Name == "User"); rolesData.ShouldContain(x => x.Name == "Displayer"); }}
- 1 回答
- 0 关注
- 90 浏览
添加回答
举报
0/150
提交
取消