测试get方法我在我的控制器中的财产,我想测试:我怎么能在我的控制器
public List<SelectOption> exampleProperty {
get {
//Do something;
}
}
我不知道如何覆盖在我的测试类的代码。有任何想法吗?
测试get方法我在我的控制器中的财产,我想测试:我怎么能在我的控制器
public List<SelectOption> exampleProperty {
get {
//Do something;
}
}
我不知道如何覆盖在我的测试类的代码。有任何想法吗?
有直接的方式,刚刚从测试方法
List<SelectOption> temp = obj.method;
首先,你真的想要一个名为“方法”的属性?看起来很混乱。无论如何,要覆盖代码,只需拨打电话
someObject.get(method);
但代码覆盖率应该是编写好测试的副作用 - 而不是目标。你应该考虑代码应该做什么,并编写测试来检查(即断言)它正在工作。为使代码效率和可读性智能模式 -
您可能需要直接测试性能,特别是如果你使用lazy initialization调用属性。
下面是这个模式的列表例如:
Integer[] lotteryNumbers {
get {
if (lotteryNumbers == null) {
lotteryNumbers = new Integer[]{};
}
return lotteryNumbers;
}
set;
}
如果你想要的图案全覆盖(这可能是一个好主意,当你习惯了它),你需要做的事情像下面这样:
static testMethod void lotteryNumberFactoryText() {
// test the null case
System.assert(lotteryNumbers.size() == 0);
Integer[] luckyNumbers = new Integer[]{33,8};
lotteryNumbers.addAll(luckyNumbers);
// test the not null case
System.assert(lotteryNumbers == luckyNumbers);
}
这是非常乐观的:)那我怎么开始为好,然后在每一个部署开始服用10分钟,运行所有“适当”测试你开始改变策略,开始瞄准了必要的覆盖面:) – mmix 2012-03-02 10:49:40
哈哈..这是真的...一些我工作的顾问坚持获得最大覆盖范围。关于作为方法的名称是一个监督..当我键入代码 – Prady 2012-03-02 14:26:03