Hello there!
I have a collection what run perfectly in KS version 7.2.1. After download and activate version 7.7.1 I tried to execute this collection on exactly same enviroment, but some test cases failed.
After two execution, not the same cases failed.
Need I to upgrade the cases too?
Anyone any idea?
Hi @David_Varhelyi
Please share the message of the failed test case or the full stack-trace.
The error reasons are so different, for example one cases failed cause:
It seems it can not find a web element
"com.kms.katalon.core.exception.StepFailedException: Unable to click on object âObject Repository/VehicleEditFormsaveVehicleModificationButtonâ
at com.kms.katalon.core.webui.keyword.internal.WebUIKeywordMain.stepFailed(WebUIKeywordMain.groovy:64)
at com.kms.katalon.core.webui.keyword.internal.WebUIKeywordMain.runKeyword(WebUIKeywordMain.groovy:26)
at com.kms.katalon.core.webui.keyword.builtin.ClickKeyword.click(ClickKeyword.groovy:76)
at com.kms.katalon.core.webui.keyword.builtin.ClickKeyword.execute(ClickKeyword.groovy:43)
at com.kms.katalon.core.keyword.internal.KeywordExecutor.executeKeywordForPlatform(KeywordExecutor.groovy:73)
at com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords.click(WebUiBuiltInKeywords.groovy:617)
at com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords$click$2.call(Unknown Source)
at Fleet_linking_entities.run(Fleet_linking_entities:89)
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:339)
at com.kms.katalon.core.main.TestCaseExecutor.doExecute(TestCaseExecutor.java:330)
at com.kms.katalon.core.main.TestCaseExecutor.processExecutionPhase(TestCaseExecutor.java:309)
at com.kms.katalon.core.main.TestCaseExecutor.accessMainPhase(TestCaseExecutor.java:301)
at com.kms.katalon.core.main.TestCaseExecutor.execute(TestCaseExecutor.java:235)
at com.kms.katalon.core.main.TestSuiteExecutor.accessTestCaseMainPhase(TestSuiteExecutor.java:191)
at com.kms.katalon.core.main.TestSuiteExecutor.accessTestSuiteMainPhase(TestSuiteExecutor.java:141)
at com.kms.katalon.core.main.TestSuiteExecutor.execute(TestSuiteExecutor.java:90)
at com.kms.katalon.core.main.TestCaseMain.startTestSuite(TestCaseMain.java:157)
at com.kms.katalon.core.main.TestCaseMain$startTestSuite$0.call(Unknown Source)
at TempTestSuite1603793757234.run(TempTestSuite1603793757234.groovy:39)
Caused by: org.openqa.selenium.ElementNotInteractableException: element not interactable
(Session info: chrome=86.0.4240.111)
Build info: version: â3.141.59â, revision: âe82be7d358â, time: â2018-11-14T08:25:53â
System info: host: âW10TESZTPCâ, ip: â192.168.100.117â, os.name: âWindows 10â, os.arch: âamd64â, os.version: â10.0â, java.version: â1.8.0_181â
Driver info: com.kms.katalon.selenium.driver.CChromeDriver
Capabilities {acceptInsecureCerts: false, browserName: chrome, browserVersion: 86.0.4240.111, chrome: {chromedriverVersion: 85.0.4183.87 (cd6713ebf92faâŚ, userDataDir: C:\Users\DEVELO~1\AppData\LâŚ}, goog:chromeOptions: {debuggerAddress: localhost:60338}, javascriptEnabled: true, networkConnectionEnabled: false, pageLoadStrategy: normal, platform: WINDOWS, platformName: WINDOWS, proxy: Proxy(), setWindowRect: true, strictFileInteractability: false, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior: dismiss and notify, webauthn:virtualAuthenticators: true}
Session ID: 162e97f1bab492da881f0910b273a340
at org.openqa.selenium.remote.http.W3CHttpResponseCodec.createException(W3CHttpResponseCodec.java:187)
at org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:122)
at org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:49)
at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:158)
at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:83)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552)
at com.kms.katalon.selenium.driver.CChromeDriver.execute(CChromeDriver.java:19)
at org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:285)
at org.openqa.selenium.remote.RemoteWebElement.click(RemoteWebElement.java:84)
at org.openqa.selenium.support.events.EventFiringWebDriver$EventFiringWebElement.lambda$new$0(EventFiringWebDriver.java:404)
at com.sun.proxy.$Proxy17.click(Unknown Source)
at org.openqa.selenium.support.events.EventFiringWebDriver$EventFiringWebElement.click(EventFiringWebDriver.java:417)
at com.kms.katalon.core.webui.keyword.builtin.ClickKeyword$_click_closure1.doCall(ClickKeyword.groovy:69)
at com.kms.katalon.core.webui.keyword.builtin.ClickKeyword$_click_closure1.call(ClickKeyword.groovy)
at com.kms.katalon.core.webui.keyword.internal.WebUIKeywordMain.runKeyword(WebUIKeywordMain.groovy:20) "
@Russ_Thomas
My smart wait settings are exactly same as you show. These elements are interactable
under KS 7.2.1 version. (with same settings)
Two things you should be aware ofâŚ
-
Katalon is constantly changing with each new release. You can expect that it will get faster over time.
-
The faster a test case runs, the more likely you are to see it run âtoo fastâ for a browser to keep up. Browsers are slow - very slow.
By all means, if you prefer, keep your tests as they are. Then you get to watch them failing more often as Katalon gets even faster.
Your call.
@Russ_Thomas
I have a sad experience, when I made upgrade from 5.4.x 7.2.1. I just thought there is an easier way than rework all my cases again. The time is so important for me because now I have 178 cases in 8 suite The run time is 194 minutes now.
I agree the browser more slower day by day //and my virtual machine too//
Well, the final solution is the wait mechanism upgrade on each parts where the problem occure?
There is - a better test design and approach.
Very similar to mine - and I donât see those problems.
I didnât say that. Browsers are getting faster but they will never approach the speed of test cases running in memory. Browsers have to wait for servers to respond with HTML/JavaScript/CSS and data.
(Aside: Do you use Tiddlywiki? Reason I ask, //stuff// is how you do italics in Tiddlywiki.)
No, change your design philosophy:
//imports...
// Wait for the page to load
// Wait for things like AJAX to finish (Smart Wait helps here)
// Wait for EVERYTHING you are going to touch (inputs, buttons, etc.)
// If you're completely paranoid, WebUI.delay(2)
// Start your Test Steps here...
2 Likes
@Russ_Thomas
I appreciate your advices! It will be helpful for the future. By the way my newer cases are following these approaches.
â(Aside: Do you use Tiddlywiki? Reason I ask, //stuff// is how you do italics in Tiddlywiki.)â No I donât, it is just a coincidence
for the topic ofâŚâbrowser more slowerâ⌠I thought the end of the long runtime, browser or server or VM more slower than in the begin of run. It depends more likely âhardwareâ than software.
Thank you so much for your answers!
If the server or vm is slower, contact your infrastructure / it team.
If the vm is hosted on your local machine, reconsider your hardware administration/devops skills
1 Like