Dan*_*iel 1 java salesforce apex-code
我编写了一个在用户按下按钮时执行的顶点类.它将当前数据保存到日志中,检查它们当前所在的页面并重新加载它(因此它们显示为记录器的空白实例).我目前正在尝试为此类编写测试方法并收到此错误:"编译错误:未定义构造函数:[Logger_Extend].()在第45行第38列"(第45行是这一行"Logger_Extend controller = new Logger_Extend ();").
这是相关的代码.对于我做错了什么,有没有人有任何想法?
public class Logger_Extend {
private final RCA_Logger__c Log;
public Logger_Extend (ApexPages.StandardController
stdController) {
Log = (RCA_Logger__c)stdController.getRecord();
}
public PageReference XX() {
// Add the account to the database.
insert Log;
// Send the user back to current page.
PageReference pageRef = ApexPages.currentPage();
pageRef.setRedirect(true);
return pageRef;
}
static testMethod void myTest() {
Logger_Extend controller = new Logger_Extend();
PageReference pageRef = ApexPages.currentPage();
System.assert(controller.XX() == pageRef);
}
Run Code Online (Sandbox Code Playgroud)
}
您没有Logger_Extend的构造函数,它不接受任何参数,但您尝试在测试中实例化一个参数.
虽然默认情况下为您创建了无参数构造函数,但是一旦添加了带参数的自定义构造函数,您还需要添加无参数构造函数.
如果编写一个带参数的构造函数,则可以使用该构造函数使用这些参数创建对象.
如果创建一个带参数的构造函数,并且仍想使用无参构造函数,则必须在代码中包含一个参数.为类创建构造函数后,您将无法再访问默认的无参数公共构造函数.你必须创建自己的.
| 归档时间: |
|
| 查看次数: |
5404 次 |
| 最近记录: |