我可以使用 xUnit 以编程方式"发出"测试用例吗?



是否可以在测试方法上使用反射和[Fact]属性以外的东西来将测试暴露给xUnit测试运行器?例如,我想这样做:

[FactSource] // just making this up
public IEnumerable<ITest> GetUnitTests()
{
    yield return new TestCase("test case 1", () => FooAssertion());
    yield return new TestCase("test case 2", () => BarAssertion());
}

我已经多次想这样做,以减少函数的样板文件,以包装每一个case。通常这是有意义的,但当我测试100个API端点时,这是100行代码与400行代码的文件之间的区别。此外,我有一些情况,我想从。json或。xml文件加载测试,所以如果有另一种方式加载测试,而不仅仅是[Fact][Theory]属性,那将是伟大的。

注意:[Theory]对于这样的一些测试工作得很好,但是它不适用于从文件加载用例,也不适用于上面演示的使用lambda表达式的用例。

谢谢!

查看Exude。

相关内容

  • 没有找到相关文章

最新更新