A-A+

【NUnit】Utility Methods

2014年12月27日 Nunit 【NUnit】Utility Methods已关闭评论 阅读 504 次

4个功能方法:Pass(), Fail(), Ignore() and Inconclusive() 用来直接控制测试进程:

Assert.Pass();
Assert.Pass( string message );
Assert.Pass( string message, object[] parms );

Assert.Fail();
Assert.Fail( string message );
Assert.Fail( string message, object[] parms );

Assert.Ignore();
Assert.Ignore( string message );
Assert.Ignore( string message, object[] parms );

Assert.Inconclusive();
Assert.Inconclusive( string message );
Assert.Inconclusive( string message, object[] parms );

 Assert.Pass方法可以直接结束测试,并标记为成功。这会抛出一个异常,能更方便的从测试返回。然而, Assert.Pass允许在测试结果中记录一个信息并且让测试在某些情况下更容易阅读。

另外,和本页面其他方法一样,能够从嵌套的方法调用并立即终止运行的测试。

Assert.Fail方法提供生成一个失败,这个失败必须基于未被其他方法封装。这在开发指定项目assertions的时候非常有用。

下面是一个示例,它创建了一个私有assertion来测试一个字符串是否包含一个预期值。

public void AssertStringContains( string expected, string actual )
{
    AssertStringContains( expected, actual, string.Empty );
}

public void AssertStringContains( string expected, string actual,
    string message )
{
    if ( actual.IndexOf( expected ) < 0 )
        Assert.Fail( message );
}

Assert.Ignore 方法用于在运行时动态忽悠一个测试用例。可以在一个test、setup 、fixture setup 等方法。

我们建议仅在独立用例中使用。这些提供更广泛的包含或者排除的测试,或者可以在不同的程序集不同的时机分离测试。

Assert.Inconclusive方法指示使用现有数据测试不能完成。需要其他情况下用另外的数据运行才能完成,生产一个成功或者失败的结果。

标签:

评论已关闭!

Copyright © 极品飞鸽 保留所有权利.   Theme  Ality 蜀ICP备14015766号-1

用户登录

分享到: