欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

详解.Net单元测试方法

程序员文章站 2022-06-17 21:19:19
1、测试异常 可以直接对方法进行异常测试,也可以对模拟对象进行异常测试,但是,对模拟对象进行异常测试,很少用,所以,这里就介绍对方法的异常测试。请看如下代码,当用户名为空...

1、测试异常

可以直接对方法进行异常测试,也可以对模拟对象进行异常测试,但是,对模拟对象进行异常测试,很少用,所以,这里就介绍对方法的异常测试。请看如下代码,当用户名为空的时候,抛出异常。

例如

 
public bool valid(string username, string password)
 
  {
 
    if (string.isnullorempty(username)) throw new argumentnullexception("username is null");
 
    var isvalid = username == "admin" && password == "123456";
 
    log.write(username);
 
    return isvalid;
 
  }

测试代码如下

 
[test]
 
 [expectedexception(typeof(argumentnullexception))]
 public void vaild_throw_test()
 {
   mylogin l = new mylogin();
   l.valid("", "123456");
 }

2、测试返回值

这里用到了一个lastcall的一个类,比较常用,一些辅助测试的功能,都在该类中。

测试代码如下

[test]
public void valid_return()
{
  mockrepository mock = new mockrepository();
  var log = mock.dynamicmock<ilog>();
  using (mock.record())
  {
    log.writelog("admin");
    lastcall.return(0);
  }
  var returnvalue = log.writelog("admin");
  assert.areequal(returnvalue, 0);
}