Pex可以自动发现类型溢出/下溢情况吗?

Vik*_*hov 6 .net c# unit-testing pex

假设有一个像这样的方法(C#):

public static int Add(int x, int y)
{
    return x + y;
}
Run Code Online (Sandbox Code Playgroud)

如果总和不适合int数据类型,则可能是错误情况,值得进行单元测试.Pex是否能够识别出这些错误并为这些错误生成单元测试?

Bry*_*son 5

是的,它非常擅长.在介绍Pex时,他们会经常使用Java库的二进制排序例程中发现的错误,当找到新的中点时,它会溢出非常大的数组.一组相关的错误是闰年错误,他们通常会使用微软自己的产品之一(Azure?)中的一个功能,该产品在野外显示其中一个.

Pex捕获了许多不同类别的错误,包括溢出,下溢,空引用,无效参数,甚至是您在应用程序中抛出的任何自定义异常.我强烈建议您阅读一些入门指南,然后将Pex与Code Contracts结合起来,从长远来看,让您的生活更轻松.

  • 使用哈希表时甚至可能导致哈希冲突.这很好. (2认同)