【发布时间】:2011-07-17 08:51:12
【问题描述】:
我刚刚开始进行单元测试。假设我有一个过滤器类来过滤掉盒子。 Box 和 BoxFilter 的定义如下:
class Box
{
double GetHeight()
double GetWidth()
double GetWeight()
}
class BoxFilter
{
void SetMaxHeight()
void SetMaxWidth()
void SetMaxWeight()
bool PassesFilter(Box box)
}
因此,如果一个盒子没有超过各种最大阈值,那么它就会通过过滤器。
我的问题是关于为BoxFilter 类的PassesFilter 方法编写单元测试。
我可以在 SetUp() 方法中创建 BoxFilter 并保持 BoxFilter 设置不变并且
然后在每个测试中操作Box 属性以验证它是通过还是失败。例如,
将最大高度、宽度和重量设置为 10,然后将框属性调整为高于或低于
10 并断言预期的结果。
或者,我可以保持 Box 设置不变并且
操纵BoxFilter 设置。
或者,我可以测试这两种情况:BoxFilter 常量
并更改Box 和Box 常量并更改BoxFilter。
单元测试的正确方法是什么 方法?我还想测试一系列值,而不仅仅是说 10?
【问题讨论】:
标签: unit-testing