我使用Visual Studio 2015 Ultimate,我写了一些单元测试(我使用xUnit 2.1.0.3179,它允许这个签名):
public async Task MyTest()
代替标准单元测试签名
public void MyTest()
但是这些单元测试在Visual Studio(代码镜头)和测试资源管理器中不可见。当然,我重建解决方案没有任何错误:)
是否有可能拥有与标准签名测试相同的功能?也许有任何VS扩展?
答案 0 :(得分:1)
我很确定您可能已经找到了解决方案,但我在尝试修复异步单元测试时发现了您的问题。 (注意:我使用的是最新的Visual Studio 2015 Update 3)。
[TestMethod]
public async Task GetVendors_ByRegionId_ReturnFilteredVendors()
{
// Arrange
var optionsBuilder = new DbContextOptionsBuilder();
optionsBuilder.UseSqlServer("Server=server12345;Database=DB789;Trusted_Connection=True;MultipleActiveResultSets=true");
var ctx = new ApplicationDbContext(optionsBuilder.Options);
ILoggerFactory logFac = new LoggerFactory();
ILogger<VendorRepository> loggerRepository = new Logger<VendorRepository>(logFac);
IVendorRepository vendRepo = new VendorRepository(ctx, loggerRepository);
// Act
Task<List<Vendor>> resultTask = vendRepo.GetVendors(1);
IList<Vendor> vendorList = await resultTask;
// Assert
Assert.IsNotNull(vendorList);
Assert.IsTrue(vendorList.Count > 10);
}