I created a Keyword class in Katalon called, “OrganizationKeywords.groovy”. The class takes in the following types of parameters as shown here:
@Keyword
def createTestOrganization(
Integer orgTypeId,
String orgType,
String orgNumber,
String legalName,
String addressLine1,
String addressLine2,
String cityName,
String stateCode,
String zipCode,
String zipExtn,
String vendorId,
String adminFirstName,
String adminLastName,
String adminUserName,
String adminEmail,
String adminMobilePhoneNumber) {
//Code Stuff Here.
}
I have another class called, “AccountKeywords.groovy”, that calls on the above function in this exact fashion:
Integer orgTypeId = 2;
orgType = 'TEST';
orgNumber = 'TESTORG';
String legalName = 'TESTORG';
String addressLine1 = 'addressLine1';
String addressLine2 = 'addressLine2';
String cityName = 'cityName';
String stateCode = 'NY';
String zipCode = '11215';
String zipExtn = '123';
String vendorId = '1';
def wyoOrgIds = [];
String adminFirstName = 'testAdminFirstName';
String adminLastName = 'testAdminLastName';
String adminUserName = 'testAdmin';
String adminEmail = 'testAdmin@adminEmail.com';
String adminMobilePhoneNumber = '111-111-1111';
OrganizationKeywords.createTestOrganization(
orgTypeId,
orgType,
orgNumber,
legalName,
addressLine1,
addressLine2,
cityName,
stateCode,
zipCode,
zipExtn,
vendorId,
adminFirstName,
adminLastName,
adminUserName,
adminEmail,
adminMobilePhoneNumber
);
Both “AccountKeywords.groovy” and “OrganizationKeywords.groovy” sit in the same project folder. When I run my code, I get this stack trace error:
org.codehaus.groovy.runtime.InvokerInvocationException: groovy.lang.MissingMethodException: No signature of method: static gov.dhs.fema.pivot.OrganizationKeywords.createTestOrganization() is applicable for argument types: (java.lang.Integer, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String) values: [2, WYO, TESTORG, TESTORG, addressLine1, addressLine2, cityName, ...]
Possible solutions: createTestOrganization(java.lang.Integer, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)
at gov.dhs.fema.pivot.AccountKeywords.invokeMethod(AccountKeywords.groovy)
at com.kms.katalon.core.main.CustomKeywordDelegatingMetaClass.invokeStaticMethod(CustomKeywordDelegatingMetaClass.java:50)
at WHEN - PUT-account is called.run(WHEN - PUT-account is called:70)
at com.kms.katalon.core.main.ScriptEngine.run(ScriptEngine.java:194)
at com.kms.katalon.core.main.ScriptEngine.runScriptAsRawText(ScriptEngine.java:119)
at com.kms.katalon.core.main.TestCaseExecutor.runScript(TestCaseExecutor.java:369)
at com.kms.katalon.core.main.TestCaseExecutor.doExecute(TestCaseExecutor.java:360)
at com.kms.katalon.core.main.TestCaseExecutor.processExecutionPhase(TestCaseExecutor.java:339)
at com.kms.katalon.core.main.TestCaseExecutor.accessMainPhase(TestCaseExecutor.java:331)
at com.kms.katalon.core.main.TestCaseExecutor.execute(TestCaseExecutor.java:248)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:142)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:133)
at com.kms.katalon.core.main.TestCaseMain$runTestCase$0.call(Unknown Source)
at TempTestCase1631041163603.run(TempTestCase1631041163603.groovy:25)
Could someone tell me what I’m doing wrong here? The method signature seems to line up. Is there an issue with how methods should be written in Katalon that I’m not getting?