Is "Wait for page load" keyword functioning?

Hiiii people. So I have been using the keyword “Wait for page load” and it does not seem like the step is executed at all? I checked back the console log and it seems that it got skipped over, regardless how many seconds I put. I have set 1 second delay between each step in Project settings.

Can someone please help me with this issue?

Could you please share your script and logs?

Sorry my bad. I forgot about that.

Here’s my script:

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 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.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 internal.GlobalVariable as GlobalVariable
import org.openqa.selenium.Keys as Keys
import org.openqa.selenium.WebDriver as WebDriver
import org.openqa.selenium.WebElement as WebElement
import com.kms.katalon.core.webui.driver.DriverFactory as DriverFactory

'Accessing Menu'
CustomKeywords.'javaScript.clickJS.clickUsingJS'(findTestObject('Page_Home/Menu side bar'), 30)

'Access to Import module'
CustomKeywords.'javaScript.clickJS.clickUsingJS'(findTestObject('Page_Home/Import'), 30)

'Access to Import Data screen'
CustomKeywords.'javaScript.clickJS.clickUsingJS'(findTestObject('Page_Home/Import Data'), 30)

'Go over Template Code'
WebUI.focus(findTestObject('Page_Import Data/div_Template Code'))

'Click on Template Code drop down list'
CustomKeywords.'javaScript.clickJS.clickUsingJS'(findTestObject('Page_Import Data/TemplateCode'), 0)

'Type on the drop down list to search for "importemp"'
CustomKeywords.'sendkeystroke.send.sendKey'('importemp')

'Wait for page load'
WebUI.delay(2)

'Upload test data file'

'Wait for page load'
WebUI.delay(5)

'Go over Salary Adjustment Option'
WebUI.focus(findTestObject('Page_Import Data/div_Salary Adjustment Update O'))

'Click on Salary Adjustment Option drop down list'
CustomKeywords.'javaScript.clickJS.clickUsingJS'(findTestObject('Page_Import Data/Salary Adjustment Update Option'), 0)

'Type on the drop down list to search for "adj"'
CustomKeywords.'sendkeystroke.send.sendKey'('adj')

WebUI.delay(2)

'Select "Keep Adjustment Value"'
CustomKeywords.'sendkeystroke.send.enterKey'()

WebUI.delay(5)

CustomKeywords.'javaScript.clickJS.clickUsingJS'(findTestObject('Page_Import Data/ImportData'), 5)

WebUI.delay(60)

WebUI.click(findTestObject('Page_Process/Show Import Log'))

WebUI.delay(10)

CustomKeywords.'javaScript.clickJS.clickUsingJS'(findTestObject('Page_Home/HRIS'), 30)

CustomKeywords.'javaScript.clickJS.clickUsingJS'(findTestObject('Page_Home/Entries'), 30)

CustomKeywords.'javaScript.clickJS.clickUsingJS'(findTestObject('Page_Home/Employee Profile'), 30)

WebUI.waitForPageLoad(10)

not_run: CustomKeywords.'listingtable.searchListing.searchFor'('emp030', 0)

Here’s the console log:

2018-12-11 17:36:53.007 e[39mDEBUGe[0;39m e[36mtestcase.Create New Employee (Import)    -e[0;39m e[39m32: click(findTestObject("Page_Process/Show Import Log"))e[0;39m
2018-12-11 17:36:55.088 e[39mDEBUGe[0;39m e[36mtestcase.Create New Employee (Import)    -e[0;39m e[39m33: delay(10)e[0;39m
2018-12-11 17:37:05.090 e[39mDEBUGe[0;39m e[36mtestcase.Create New Employee (Import)    -e[0;39m e[39m34: javaScript.clickJS.clickUsingJS(findTestObject("Page_Home/HRIS"), 30)e[0;39m
2018-12-11 17:37:07.155 e[34mINFO e[0;39m e[36mk.k.c.m.CustomKeywordDelegatingMetaClass -e[0;39m e[39mjavaScript.clickJS.clickUsingJS is PASSEDe[0;39m
2018-12-11 17:37:07.155 e[39mDEBUGe[0;39m e[36mtestcase.Create New Employee (Import)    -e[0;39m e[39m35: javaScript.clickJS.clickUsingJS(findTestObject("Page_Home/Entries"), 30)e[0;39m
2018-12-11 17:37:09.184 e[34mINFO e[0;39m e[36mk.k.c.m.CustomKeywordDelegatingMetaClass -e[0;39m e[39mjavaScript.clickJS.clickUsingJS is PASSEDe[0;39m
2018-12-11 17:37:09.184 e[39mDEBUGe[0;39m e[36mtestcase.Create New Employee (Import)    -e[0;39m e[39m36: javaScript.clickJS.clickUsingJS(findTestObject("Page_Home/Employee Profile"), 30)e[0;39m
2018-12-11 17:37:11.219 e[34mINFO e[0;39m e[36mk.k.c.m.CustomKeywordDelegatingMetaClass -e[0;39m e[39mjavaScript.clickJS.clickUsingJS is PASSEDe[0;39m
2018-12-11 17:37:11.219 e[39mDEBUGe[0;39m e[36mtestcase.Create New Employee (Import)    -e[0;39m e[39m37: waitForPageLoad(10)e[0;39m
2018-12-11 17:37:12.306 e[39mDEBUGe[0;39m e[36mtestcase.Create New Employee (Import)    -e[0;39m e[39m38: listingtable.searchListing.searchFor("emp030", 0)e[0;39m
2018-12-11 17:37:12.307 e[31mWARN e[0;39m e[36mtestcase.Create New Employee (Import)    -e[0;39m e[39mSKIPPED NOT_RUN: listingtable.searchListing.searchFor("emp030", 0)e[0;39m
2018-12-11 17:37:12.309 e[34mINFO e[0;39m e[36mc.k.katalon.core.main.TestCaseExecutor   -e[0;39m e[39mEND Test Cases/Create New Employee (Import)

At the very end of the console log, it does not seem like it was waiting for the page to load at all. My test case ended straight.

1 Like

Have the same problem, so I had to come back to use the delays.
Any solution about this?

See this:

try wait for element visible command. Element which you know should be enabled or visible after web page loading time , for example a button. try and then you can share the results of this.