function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
md saif ansarimd saif ansari 

Rest Api.... Please help me to write test class

@RestResource(urlMapping='/Widgets/*')
global with sharing class WidgetController {
    @HttpGet
    global static string doGet() {
        RestRequest req = RestContext.request;
        String FirstName = req.params.get('FirstName');
        String LastName = req.params.get('LastName');
        String Phone = req.params.get('Phone');
        String Email = req.params.get('Email');
        Lead ld = new Lead();
        ld.FirstName = FirstName;
        ld.LastName = LastName;
        ld.Phone = Phone;
        ld.Email = Email;
        ld.Company = 'FAP Form';
        insert ld;        
        return 'success....';
    }    
}
md saif ansarimd saif ansari
@isTest
public class WidgetControllerTest {
    @isTest public static void WidgetControllerTestMethod(){
        WidgetController wc = new WidgetController();
        Lead ld = new Lead(FirstName='Saif',LastName='Ansari',Phone='9635883458',Email='ms2saif@gmail.com',Description='Testing',Company='FAM Form',PostalCode='12345',RepEmail__c='test2saif@gmail.com');
        insert ld; 
        
        Test.startTest();
        RestRequest req = new RestRequest(); 
        RestResponse res = new RestResponse();
        req.requestURI = '/services/apexrest/Widgets'; 
        req.params.put('FirstName', 'Saif');
        req.params.put('LastName', 'Ansari');
        req.params.put('Phone', '9635883458');
        req.params.put('Email', 'ms2saif@gmail.com');
        req.params.put('Company', 'FAM Form');
        req.params.put('PostalCode', '12345');
        req.params.put('RepEmail__c', 'Saif@gmail.com');
        req.httpMethod = 'GET';
        req.addHeader('Content-Type', 'application/json'); 
        RestContext.request = req;
        RestContext.response = res;
        String usr1 = WidgetController.doGet();
        System.debug(usr1);
        Test.stopTest();
    }
}
Raj VakatiRaj Vakati
Your test class is correct and having 100% code coverage 
 
@isTest
public class WidgetControllerTest {
    @isTest public static void WidgetControllerTestMethod(){
        WidgetController wc = new WidgetController();
        Lead ld = new Lead(FirstName='Saif',LastName='Ansari',Phone='9635883458',Email='ms2saif@gmail.com',Description='Testing',Company='FAM Form',PostalCode='12345');
        insert ld; 
        
        System.Test.startTest();
        RestRequest req = new RestRequest(); 
        RestResponse res = new RestResponse();
        req.requestURI = '/services/apexrest/Widgets'; 
        req.params.put('FirstName', 'Saif');
        req.params.put('LastName', 'Ansari');
        req.params.put('Phone', '9635883458');
        req.params.put('Email', 'ms2saif@gmail.com');
        req.params.put('Company', 'FAM Form');
        req.params.put('PostalCode', '12345');
        req.params.put('RepEmail__c', 'Saif@gmail.com');
        req.httpMethod = 'GET';
        req.addHeader('Content-Type', 'application/json'); 
        RestContext.request = req;
        RestContext.response = res;
        String usr1 = WidgetController.doGet();
        System.debug(usr1);
        System.Test.stopTest();
    }
}