I suspect part of the problem is the repeated calls to [`Schema.getGlobalDescribe()`][1]. That method returns metadata for **all** the accessible sObjects and is generally expensive if you are only interested in one particular sObject. So, instead of doing this: Schema.SObjectType targetType = Schema.getGlobalDescribe().get(typeName); Schema.DescribeSObjectResult describe = targetType.getDescribe(); Try something simpler like: Schema.DescribeSObjectResult describe = Schema.describeSObjects(new String[]{typeName})[0]; Also, break your test methods into four distinct tests. One for each method. E.g. @isTest public class FieldSetControllerTest { public static String typeName = 'Contact'; public static String fsName = 'lightningFormContactFields'; @isTest public static void contactsHaveAFieldSetDefined(){ boolean contactsHaveAFieldSet = FieldSetController.hasFieldSets(typeName); System.assert(contactsHaveAFieldSet); } // Plus more tests. Each focusing on one method at a time and making assertions. } [1]: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_methods_system_schema.htm#apex_System_Schema_getGlobalDescribe