Hi, I’ve problem with datalist. How to select datalist when I type on text?

Hello,
and how you do it when you test manually?
can’t you repeat that in script?
This is my test on script
textWebUI.callTestCase(findTestCase('SPI Non PO/Master/Login'), [:], FailureHandling.STOP_ON_FAILURE)
WebUI.callTestCase(findTestCase('SPI Non PO/Master/nvNonPO'), [:], FailureHandling.STOP_ON_FAILURE)
WebUI.click(findTestObject('Input PKS/btnAddNewPKS'))
WebUI.setText(findTestObject('Input PKS/txtPKSNumber'), 'PKS/AUTOMATE/001')
WebUI.clearText(findTestObject('Input PKS/txtPKSAmount'), FailureHandling.STOP_ON_FAILURE)
WebUI.setText(findTestObject('Input PKS/txtPKSAmount'), '15000000')
WebUI.setText(findTestObject('Input PKS/txtSONumber'), '123456789')
WebUI.setText(findTestObject('Input PKS/txtNPWP'), '123456789')
WebUI.selectAllOption(findTestObject('Input PKS/ddlBillingType'))
WebUI.selectOptionByLabel(findTestObject('Input PKS/ddlBillingType'), 'FULL : BAST 100% MAINT RUTIN (14 days after receiving completed invoice)',
false)
WebUI.setText(findTestObject('Input PKS/txtSite'), 'ter')
WebUI.click(findTestObject('Input PKS/Datalist'))`
And the error :
Reason:
com.kms.katalon.core.exception.StepFailedException: Unable to click on object 'Object Repository/Input PKS/Datalist'
You have two issues
select
elements.I’m guessing but I think your best bet is to focus the text control and use Send Keys.
Hi, Rus. Thank you for your advice!
But it still not work for me.
WebUI.callTestCase(findTestCase(‘SPI Non PO/Master/Login’), [:], FailureHandling.STOP_ON_FAILURE)
WebUI.callTestCase(findTestCase(‘SPI Non PO/Master/nvNonPO’), [:], FailureHandling.STOP_ON_FAILURE)
WebUI.click(findTestObject(‘Input PKS/btnAddNewPKS’))
WebUI.setText(findTestObject(‘Input PKS/txtPKSNumber’), ‘PKS/AUTOMATE/001’)
WebUI.clearText(findTestObject(‘Input PKS/txtPKSAmount’), FailureHandling.STOP_ON_FAILURE)
WebUI.setText(findTestObject(‘Input PKS/txtPKSAmount’), ‘15000000’)
WebUI.setText(findTestObject(‘Input PKS/txtSONumber’), ‘123456789’)
WebUI.setText(findTestObject(‘Input PKS/txtNPWP’), ‘123456789’)
WebUI.selectAllOption(findTestObject(‘Input PKS/ddlBillingType’))
WebUI.selectOptionByLabel(findTestObject(‘Input PKS/ddlBillingType’), ‘FULL : BAST 100% MAINT RUTIN (14 days after receiving completed invoice)’,
false)WebUI.setText(findTestObject(‘Input PKS/txtSite’), ‘ter’)
WebUI.waitForJQueryLoad(5)
WebUI.sendKeys(findTestObject(‘Input PKS/txtSite’), Keys.chord(Keys.ARROW_DOWN))
WebUI.waitForJQueryLoad(5)
You want sendKeys, not setText.
I have a suspicion that the page is not using the datalist directly on the input type=text
control. Can you send a copy of the html when the dropdown is active?
@Andrej_Podhajsky can take a look while I get my beauty sleep (which I need, badly)
before typed ‘ter’
after typed ‘ter’ on text, datalist it will be assigned value
after I choose one of them
can you try to send those keystrokes directly to datalist?
Still not working
sendKeys(findTestObject(“Input PKS/Datalist”), Keys.chord(ARROW_DOWN, ARROW_DOWN)) FAILED.
Reason:
com.kms.katalon.core.exception.StepFailedException: Unable to send keys ‘’ to object
can you please post whole exception? which element is set to process keydown evenst?