Reason: org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: com.at.util.ScreenshotHelper.compareImages() is applicable for argument types: (com.kms.katalon.core.testobject.TestObject) values: [TestObject - 'Object

import static com.kms.katalon.core.checkpoint.CheckpointFactory.findCheckpoint
import static com.kms.katalon.core.testcase.TestCaseFactory.findTestCase
import static com.kms.katalon.core.testdata.TestDataFactory.findTestData
import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject
import static com.kms.katalon.core.testobject.ObjectRepository.findWindowsObject
import com.kms.katalon.core.checkpoint.Checkpoint as Checkpoint
import com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords as CucumberKW
import com.kms.katalon.core.mobile.keyword.MobileBuiltInKeywords as Mobile
import com.kms.katalon.core.model.FailureHandling as FailureHandling
import com.kms.katalon.core.testcase.TestCase as TestCase
import com.kms.katalon.core.testdata.TestData as TestData
import com.kms.katalon.core.testng.keyword.TestNGBuiltinKeywords as TestNGKW
import com.kms.katalon.core.testobject.TestObject as TestObject
import com.kms.katalon.core.webservice.keyword.WSBuiltInKeywords as WS
import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI
import com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords as Windows
import internal.GlobalVariable as GlobalVariable
import org.openqa.selenium.Keys as Keys

WebUI.openBrowser(‘’)

WebUI.navigateToUrl(‘https://www.google.com/’)

WebUI.maximizeWindow()

WebUI.delay(5)

CustomKeywords.‘com.at.util.ScreenshotHelper.compareImages’(findTestObject(‘google/googleimg’))

WebUI.delay(5)

WebUI.closeBrowser()

public class ScreenshotHelper {

@Keyword

public void takeWebElementScreenshot(TestObject object) {
	WebElement element=WebUICommonHelper.findWebElement(object,20)
	WebDriver driver = DriverFactory.getWebDriver();

	Screenshot screenshot=new AShot().takeScreenshot(driver, element);
	ImageIO.write(screenshot.getImage(),"PNG",new File (System.getProperty("user.dir") + "/Screenshots/IFrame.png"))
}

Console Log:

2023-08-02 21:46:18.255 INFO c.k.katalon.core.main.TestCaseExecutor - --------------------
2023-08-02 21:46:18.273 INFO c.k.katalon.core.main.TestCaseExecutor - START Test Cases/TestGoogle
2023-08-02 21:46:21.273 DEBUG testcase.TestGoogle - 1: openBrowser(“”)
2023-08-02 21:46:22.699 INFO c.k.k.core.webui.driver.DriverFactory - Starting ‘Chrome’ driver
Aug 02, 2023 9:46:22 PM org.openqa.selenium.remote.DesiredCapabilities chrome
INFO: Using new ChromeOptions() is preferred to DesiredCapabilities.chrome()
2023-08-02 21:46:22.908 INFO c.k.k.core.webui.driver.DriverFactory - Action delay is set to 0 milliseconds
Starting ChromeDriver 114.0.5735.90 (386bc09e8f4f2e025eddae123f36f6263096ae49-refs/branch-heads/5735@{#1052}) on port 36369
Only local connections are allowed.
Please see ChromeDriver - WebDriver for Chrome - Security Considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.
[1690992987.986][WARNING]: This version of ChromeDriver has not been tested with Chrome version 115.
Aug 02, 2023 9:46:28 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C
2023-08-02 21:46:29.209 INFO c.k.k.core.webui.driver.DriverFactory - sessionId = abeb3f978a2d71704f5f4601cf4b9edb
2023-08-02 21:46:29.273 INFO c.k.k.core.webui.driver.DriverFactory - browser = Chrome 115.0.0.0
2023-08-02 21:46:29.275 INFO c.k.k.core.webui.driver.DriverFactory - platform = Windows 10
2023-08-02 21:46:29.276 INFO c.k.k.core.webui.driver.DriverFactory - seleniumVersion = 3.141.59
2023-08-02 21:46:29.280 INFO c.k.k.core.webui.driver.DriverFactory - proxyInformation = ProxyInformation { proxyOption=NO_PROXY, proxyServerType=HTTP, username=, password=********, proxyServerAddress=, proxyServerPort=0, executionList=“”, isApplyToDesiredCapabilities=true }
2023-08-02 21:46:29.337 DEBUG testcase.TestGoogle - 2: navigateToUrl(“https://www.google.com/”)
2023-08-02 21:46:32.058 DEBUG testcase.TestGoogle - 3: maximizeWindow()
2023-08-02 21:46:32.409 DEBUG testcase.TestGoogle - 4: delay(5)
2023-08-02 21:46:37.602 DEBUG testcase.TestGoogle - 5: com.at.util.ScreenshotHelper.compareImages(findTestObject(“google/googleimg”))
2023-08-02 21:47:19.946 ERROR k.k.c.m.CustomKeywordDelegatingMetaClass - :x: No signature of method: com.at.util.ScreenshotHelper.compareImages() is applicable for argument types: (com.kms.katalon.core.testobject.TestObject) values: [TestObject - ‘Object Repository/google/googleimg’]
2023-08-02 21:48:59.925 ERROR c.k.katalon.core.main.TestCaseExecutor - :x: Test Cases/TestGoogle FAILED.
Reason:
com.kms.katalon.core.exception.StepErrorException: org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: com.at.util.ScreenshotHelper.compareImages() is applicable for argument types: (com.kms.katalon.core.testobject.TestObject) values: [TestObject - ‘Object Repository/google/googleimg’]
at com.kms.katalon.core.main.CustomKeywordDelegatingMetaClass.throwError(CustomKeywordDelegatingMetaClass.java:101)
at com.kms.katalon.core.main.CustomKeywordDelegatingMetaClass.invokeStaticMethod(CustomKeywordDelegatingMetaClass.java:73)
at TestGoogle.run(TestGoogle:28)
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:448)
at com.kms.katalon.core.main.TestCaseExecutor.doExecute(TestCaseExecutor.java:439)
at com.kms.katalon.core.main.TestCaseExecutor.processExecutionPhase(TestCaseExecutor.java:418)
at com.kms.katalon.core.main.TestCaseExecutor.accessMainPhase(TestCaseExecutor.java:410)
at com.kms.katalon.core.main.TestCaseExecutor.execute(TestCaseExecutor.java:285)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:144)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:135)
at com.kms.katalon.core.main.TestCaseMain$runTestCase$0.call(Unknown Source)
at TempTestCase1690992966809.run(TempTestCase1690992966809.groovy:25)
Caused by: org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: com.at.util.ScreenshotHelper.compareImages() is applicable for argument types: (com.kms.katalon.core.testobject.TestObject) values: [TestObject - ‘Object Repository/google/googleimg’]

2023-08-02 21:49:04.564 ERROR c.k.katalon.core.main.TestCaseExecutor - :x: Test Cases/TestGoogle FAILED.
Reason:
org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: com.at.util.ScreenshotHelper.compareImages() is applicable for argument types: (com.kms.katalon.core.testobject.TestObject) values: [TestObject - ‘Object Repository/google/googleimg’]

Hi,

Thank you for letting us know. I will create a ticket on this. Can you please provide your device version

You haven’t showed us the source code of compareImages method; therefore we can not see anything about the exception.

1 Like

If you are using KS version 7.7 or above, there is a statement, WebUI.takeElementScreenshot(filename, TestObject, FailureHandling) that you might be able to use.

example:

WebUI.takeElementScreenshot(gReportPathway + "DetailsOnWhy4.png", findTestObject('myPage/textarea_DetailsCriteria'))

([WebUI] Take Element Screenshot | Katalon Docs)

1 Like

Thanks for your response and worked for me

‘*** DISCLAIMER ***This e-mail and any files transmitted with it are for the sole use of the intended recipient(s) and may contain confidential and privileged information. If you are not the intended recipient, please contact the sender by reply e-mail and destroy all copies of the original message. E-mail transmission cannot be guaranteed to be secure or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. The sender therefore does not accept liability for any errors or omissions in the contents of this message, which arise as a result of e-mail transmission. Warning: No employee, addressee(s) or third-party is authorized to conclude any binding agreement on behalf of HTC Global Services with another party with this email without express written confirmation.’