Расширение охвата кода в тестовом наборе Salesforce Standard для разработчиков

Мне нужно увеличить покрытие кода в моем тестовом примере. Сейчас у меня около 50%. Я знаю, что моим расширением является учетная запись, но мне каким-то образом нужно включить информацию о задаче и Account.ParentId != Null и Task.Status =: 'Completed' в мой тестовый пример каким-то образом... Буду признателен за любую помощь...

Мой контроллер:

public class childTaskOnParentCont {

    public Account acc {get;set;}
    public List<Task> tasks {get;set;}
    public List<Task> closedTasks {get;set;}
    public List<Task> tasksLimited {get;set;}
    public List<Task> closedTasksLimited {get;set;}

    public List<Contact> cons {get;set;}


    //constructor
    public childTaskOnParentCont(apexpages.StandardController con){
        acc = (Account) con.getRecord();
        cons=[SELECT id from Contact WHERE AccountID=: acc.Id];


    tasksLimited= [Select whoid,whatid,subject,type, Medium_of_Activity__c, activitydate, lastmodifieddate,Account.Name, 
                   ownerid, status, priority from Task 
                   Where Account.ParentID != null And status !='completed' ORDER BY activitydate LIMIT 10];
   system.debug('taskslimited: '+taskslimited);

    closedTasksLimited= [Select whoid,subject,type, Medium_of_Activity__c, activitydate, lastmodifieddate,Account.Name, 
                   ownerid, status, priority from Task 
                   Where Account.ParentID != null And status =:'completed' ORDER BY activitydate LIMIT 10];  
    system.debug('closedTasksLimited: '+closedTasksLimited);   


    }

    //Get the Account Information
public Account getAccount() {
    return [SELECT id,ParentId, name FROM Account WHERE Id=: acc.Id];
}

    //Get Open Tasks for Child Tasks
public List<Task> getTasks() {

    tasks= [Select whoid,subject,type, activitydate, lastmodifieddate,Account.Name, 
                   ownerid, status, priority from Task 
            Where Account.ParentID != null And status !='completed' ORDER BY activitydate];
    return tasks;
}

//Get Closed Tasks for Child Tasks
public List<Task> getClosedTasks() {

    closedTasks= [Select whoid,subject,type, activitydate, lastmodifieddate,Account.Name, 
                   ownerid, status, priority from Task 
            Where Account.ParentID != null And status =:'completed' ORDER BY activitydate];
    return closedTasks;
  }
}

My Test Case:

public class childTaskOnParentCont {

    public Account acc {get;set;}
    public List<Task> tasks {get;set;}
    public List<Task> closedTasks {get;set;}
    public List<Task> tasksLimited {get;set;}
    public List<Task> closedTasksLimited {get;set;}

    public List<Contact> cons {get;set;}


    //constructor
    public childTaskOnParentCont(apexpages.StandardController con){
        acc = (Account) con.getRecord();
        cons=[SELECT id from Contact WHERE AccountID=: acc.Id];


    tasksLimited= [Select whoid,whatid,subject,type, Medium_of_Activity__c, activitydate, lastmodifieddate,Account.Name, 
                   ownerid, status, priority from Task 
                   Where Account.ParentID != null And status !='completed' ORDER BY activitydate LIMIT 10];
   system.debug('taskslimited: '+taskslimited);

    closedTasksLimited= [Select whoid,subject,type, Medium_of_Activity__c, activitydate, lastmodifieddate,Account.Name, 
                   ownerid, status, priority from Task 
                   Where Account.ParentID != null And status =:'completed' ORDER BY activitydate LIMIT 10];  
    system.debug('closedTasksLimited: '+closedTasksLimited);   


    }

    //Get the Account Information
public Account getAccount() {
    return [SELECT id,ParentId, name FROM Account WHERE Id=: acc.Id];
}

    //Get Open Tasks for Child Tasks
public List<Task> getTasks() {

    tasks= [Select whoid,subject,type, activitydate, lastmodifieddate,Account.Name, 
                   ownerid, status, priority from Task 
            Where Account.ParentID != null And status !='completed' ORDER BY activitydate];
    return tasks;
}

//Get Closed Tasks for Child Tasks
public List<Task> getClosedTasks() {

    closedTasks= [Select whoid,subject,type, activitydate, lastmodifieddate,Account.Name, 
                   ownerid, status, priority from Task 
            Where Account.ParentID != null And status =:'completed' ORDER BY activitydate];
    return closedTasks;
  }
}

person user7548693    schedule 11.02.2017    source источник


Ответы (2)


Создайте свои данные, я не вижу никаких тестовых данных

https://developer.salesforce.com/page/An_Introduction_to_Apex_Code_Test_Methods

person EricSSH    schedule 11.02.2017

Во-вторых, @EricSSH — вы должны заставить свои тесты фактически выполняться через весь ваш код, создавая некоторые данные. Следующее начало очень помогло мне при тестировании Apex.

https://trailhead.salesforce.com/modules/apex_testing

person pburns1587    schedule 13.02.2017