Salesforce 如何在控制器中测试get方法
我的控制器中有一个要测试的属性:Salesforce 如何在控制器中测试get方法,salesforce,apex-code,Salesforce,Apex Code,我的控制器中有一个要测试的属性: public List<SelectOption> exampleProperty { get { //Do something; } } 公共列表示例属性{ 得到{ //做点什么; } } 我不确定如何在我的测试类中涵盖这段代码。有什么想法吗?首先,您真的想要一个名为“method”的属性吗?看起来很混乱。不管怎样,为了涵盖代码,只需拨打 someObject.get(method); 但是代码覆盖率应该是编写
public List<SelectOption> exampleProperty {
get {
//Do something;
}
}
公共列表示例属性{
得到{
//做点什么;
}
}
我不确定如何在我的测试类中涵盖这段代码。有什么想法吗?首先,您真的想要一个名为“method”的属性吗?看起来很混乱。不管怎样,为了涵盖代码,只需拨打
someObject.get(method);
但是代码覆盖率应该是编写好测试的副作用,而不是目标。您应该考虑代码应该做什么,并编写测试来检查(即断言)代码是否正常工作 首先,您真的想要一个名为“method”的属性吗?看起来很混乱。不管怎样,为了涵盖代码,只需拨打
someObject.get(method);
但是代码覆盖率应该是编写好测试的副作用,而不是目标。您应该考虑代码应该做什么,并编写测试来检查(即断言)代码是否正常工作 有直接的方法,只需从测试方法调用属性即可
List<SelectOption> temp = obj.method;
List temp=obj.method;
有直接的方法,只需从测试方法调用属性即可
List<SelectOption> temp = obj.method;
List temp=obj.method;
您可能需要直接测试您的属性,特别是如果您使用-a智能模式来提高代码的效率和可读性
以下是此模式的列表示例:
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);
}
您可能需要直接测试您的属性,特别是如果您使用智能模式来提高代码的效率和可读性 以下是此模式的列表示例:
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分钟来运行所有“适当”测试时,你就开始改变策略,并开始瞄准必要的覆盖范围:)哈哈。。没错。。。我工作的一些顾问坚持要得到最大限度的保障。。将名称视为方法是一个疏忽……当我输入代码时,这是非常乐观的:)我也是这样开始的,然后当每个部署开始花费10分钟来运行所有“适当”测试时,你开始改变策略并开始尝试必要的覆盖:)哈哈。。没错。。。我工作的一些顾问坚持要得到最大限度的保障。。将名称视为方法是一个疏忽..当我输入代码时