2014-02-10 33 views
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(); 
    } 

回答

0

new ApexPages.standardController(posting[0])看起来错我。

应该有可能是new ApexPages.StandardSetController(posting[0])如果你想创建的ApexPages.StandardSetController一个新的实例,或者只是ApexPages.standardController(posting[0])(不new),如果它是一个返回这种情况下的静态方法。

顺便说一句:你应该说出你遇到了什么错误,以及在提出这样一个问题时代码出现在哪里,因为在没有这些信息的情况下很难找出它。我偶然发现这一点,否则我会要求提供这些信息。