作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我正在尝试使用 TestCaseSource 属性。一个问题:当 sourceName 字符串无效时,测试只是被忽略而不是失败。如果 source 方法被重命名,sourceName 字符串没有得到更新,这将非常糟糕,然后您将失去测试提供的覆盖范围。有没有办法改变 NUnit 的行为,以便在 sourceName 无效时测试失败?
最佳答案
这在 NUnit 2.6.2 中得到解决。该属性有一个新的构造函数,该构造函数采用 Type
(必须实现 IEnumerable
);它“被推荐优先于其他形式使用,因为它不使用字符串来指定数据源,因此更容易重构。” (来自 documentation 。)
这确实需要您的测试运行器支持最新的 NUnit。
一个非常基本的示例(有关详细信息,请参阅上面的文档链接):
public class TestDataProvider : IEnumerable
{
public IEnumerator GetEnumerator()
{
return new List<int>{ 2, 4, 6 }.GetEnumerator();
}
}
[TestFixture]
public class MyTests
{
[TestCaseSource(typeof(TestDataProvider))]
public void TestOne(int number)
{
Assert.That(number % 2, Is.EqualTo(0));
}
}
关于c# - NUnit 测试用例源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11722888/
我最近购买了《C 编程语言》并尝试了 Ex 1-8这是代码 #include #include #include /* * */ int main() { int nl,nt,nb;
早上好!我有一个变量“var”,可能为 0。我检查该变量是否为空,如果不是,我将该变量保存在 php session 中,然后调用另一个页面。在这个新页面中,我检查我创建的 session 是否为空,
我正在努力完成 Learn Python the Hard Way ex.25,但我无法理解某些事情。这是脚本: def break_words(stuff): """this functio
我是一名优秀的程序员,十分优秀!