0

我在测试这段代码时遇到了一个讨厌的错误。不确定我做错了什么。我之前测试过标准控制器,但没有测试 getSelectedMethod 错误:未定义构造函数:[myClass].(ApexPages.StandardController)

public class MyClass{

  public List<Web__c> postings {get;set;}
  public static final String POSTINGSTATUS = 'Yes';

  public MyClass (ApexPages.StandardSetController controller) {
     List<Web__c> selectedWeb = (List<Web__c>) controller.getSelected();
     postings = [Select Id, Name,
                    FROM Web___c Where Id IN: selectedWeb
                    AND Date__c != null 
                    AND Date__c > today];
 }
}

我的测试班

private class myTestClass {

  static testMethod void WebTest() {
    List <Web__c> posting = helper.createWeb(4);
    insert posting;

    Test.startTest();  
    PageReference pageRef = Page.VFPAGE;
    Test.setCurrentPage(pageRef);
    ApexPages.StandardController sc = new ApexPages.standardController(posting[0]);
    myClass JPC = new myClass(sc);
    sc.setSelected(posting);
    Test.stopTest();
  }
4

1 回答 1

0

new ApexPages.standardController(posting[0])在我看来不对。

new ApexPages.StandardSetController(posting[0])如果您想创建 的新实例,或者如果它是返回此类实例的静态方法,则可能只是ApexPages.StandardSetControllerApexPages.standardController(posting[0])没有)。new

顺便说一句:当你问这样一个问题时,你应该说明你得到了什么错误以及它在代码中发生的位置,因为在没有这些信息的情况下弄清楚它是非常困难的。我只是偶然发现了这个,否则我会要求提供该信息。

于 2014-02-10T21:30:51.257 回答