【问题标题】:Using custom objects with Pex testing framework将自定义对象与 Pex 测试框架一起使用
【发布时间】:2011-08-24 06:46:57
【问题描述】:

我正在尝试使用 Pex 和 Moles 测试框架来测试我的项目。

我对使用 Pex 进行参数化测试有一点想法。

void SampleMethod(Employee emp)
{
/// Some business logic
}
void SampleMethod(List<Employee> emps)
{
/// Some business logic
}

如何对这些方法进行测试?

谢谢 阿什瓦尼

【问题讨论】:

    标签: pex


    【解决方案1】:

    Pex 将为您生成测试,而 Moles 将提供存根。

    例如

    [TestMethod]
    [PexGeneratedBy(typeof(ProgramTest))]
    public void someTest()
    {
        SCustomer sCustomer = new SCustomer();
        int i;
        i = this.DoSomething((Customer)sCustomer);
        Assert.AreEqual<int>(0, i);
    }
    

    这里的“S”表示“存根”,是依赖类的模拟对象,在您的例子中是“Employee”或“SEmployee”。 Moles 根据接口(在您的情况下为 IEmployee)进行存根。

    然后您可以使用匿名委托来消除行为:

    customer.GetFirstName = () => "Charlie"; 
    

    这有帮助吗?

    【讨论】:

      猜你喜欢
      • 2013-04-17
      • 2015-11-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多