Im trying to verify that the string has been inputted correctly and has saved as expected but when using the VerifyElementText tool it gives me that they are not matched however they are. Am i doing something wrong?
Test Cases/touchpoint examples/Add a new job - HR - 9.1 FAILED.
Reason:
com.kms.katalon.core.exception.StepFailedException: Verify element text of test object ‘Object Repository/Add a new job/Page_CIPHR Self Service 9.1.0/input_Job Number _Job.JobNumbe’ FAILED. (Root cause: com.kms.katalon.core.exception.StepFailedException: Actual text ‘’ and expected text ‘778267’ of test object ‘Object Repository/Add a new job/Page_CIPHR Self Service 9.1.0/input_Job Number _Job.JobNumbe’ are NOT matched.)
at com.kms.katalon.core.keyword.internal.KeywordMain.stepFailed(KeywordMain.groovy:36)
at com.kms.katalon.core.webui.keyword.internal.WebUIKeywordMain.stepFailed(WebUIKeywordMain.groovy:65)
at com.kms.katalon.core.webui.keyword.internal.WebUIKeywordMain.runKeyword(WebUIKeywordMain.groovy:27)
at com.kms.katalon.core.webui.keyword.builtin.VerifyElementTextKeyword.verifyElementText(VerifyElementTextKeyword.groovy:72)
at com.kms.katalon.core.webui.keyword.builtin.VerifyElementTextKeyword.execute(VerifyElementTextKeyword.groovy:40)
at com.kms.katalon.core.keyword.internal.KeywordExecutor.executeKeywordForPlatform(KeywordExecutor.groovy:56)
at com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords.verifyElementText(WebUiBuiltInKeywords.groovy:3647)
at com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords$verifyElementText$8.call(Unknown Source)
at Add a new job - HR - 9.1.run(Add a new job - HR - 9.1:64)
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:328)
at com.kms.katalon.core.main.TestCaseExecutor.doExecute(TestCaseExecutor.java:319)
at com.kms.katalon.core.main.TestCaseExecutor.processExecutionPhase(TestCaseExecutor.java:298)
at com.kms.katalon.core.main.TestCaseExecutor.accessMainPhase(TestCaseExecutor.java:290)
at com.kms.katalon.core.main.TestCaseExecutor.execute(TestCaseExecutor.java:224)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:106)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:97)
at com.kms.katalon.core.main.TestCaseMain$runTestCase$0.call(Unknown Source)
at TempTestCase1551348940787.run(TempTestCase1551348940787.groovy:22)
Script
if (WebUI.verifyElementNotVisible(findTestObject('Object Repository/Add a new job/Page_CIPHR Self Service 9.1.0/span_HR Admin'))) {
WebUI.click(findTestObject('Object Repository/Add a new job/Page_CIPHR Self Service 9.1.0/span_Log Out_glyphicons glyphi'))
WebUI.click(findTestObject('Object Repository/Add a new job/Page_CIPHR Self Service 9.1.0/span_HR Admin'))
} else {
WebUI.click(findTestObject('V9.1 Testing/Page_CIPHR Self Service 9.1.0/span_HR Admin'))
}
WebUI.click(findTestObject('Object Repository/Add a new job/Page_CIPHR Self Service 9.1.0/div_Jobs'))
WebUI.click(findTestObject('Object Repository/Add a new job/Page_CIPHR Self Service 9.1.0/a_Insert New Record'))
WebUI.setText(findTestObject('Object Repository/Add a new job/Page_CIPHR Self Service 9.1.0/input_Job Number _Job.JobNumbe'),
'778267')
WebUI.setText(findTestObject('Object Repository/Add a new job/Page_CIPHR Self Service 9.1.0/input_Job Title _Job.JobTitle'),
'AA Boss')
WebUI.click(findTestObject('Object Repository/Add a new job/Page_CIPHR Self Service 9.1.0/span_Department_k-input'))
WebUI.waitForElementVisible(findTestObject('Add a new job/Page_CIPHR Self Service 9.1.0/li_Chief Executive Office'), 0)
WebUI.click(findTestObject('Object Repository/Add a new job/Page_CIPHR Self Service 9.1.0/li_Chief Executive Office'))
WebUI.setText(findTestObject('Object Repository/Add a new job/Page_CIPHR Self Service 9.1.0/input_Date Created_Job.JobCrea'),
'12/Feb/2019')
WebUI.click(findTestObject('Object Repository/Add a new job/Page_CIPHR Self Service 9.1.0/button_Update'))
WebUI.delay(5)
WebUI.setText(findTestObject('Object Repository/Add a new job/Page_CIPHR Self Service 9.1.0/textarea_Specification_Job.Job'),
'test')
WebUI.click(findTestObject('Object Repository/Add a new job/Page_CIPHR Self Service 9.1.0/button_Update'))
WebUI.delay(4)
WebUI.waitForElementVisible(findTestObject('Add a new job/Verify job created correctly/td_AA Boss'), 0)
WebUI.click(findTestObject('Add a new job/Verify job created correctly/td_AA Boss'))
WebUI.verifyElementPresent(findTestObject('Add a new job/Verify job created correctly/span_Chief Executive Office'), 0)
WebUI.verifyElementText(findTestObject('Add a new job/Page_CIPHR Self Service 9.1.0/input_Job Number _Job.JobNumbe'), '778267',
FailureHandling.STOP_ON_FAILURE)
WebUI.verifyElementText(findTestObject('Add a new job/Page_CIPHR Self Service 9.1.0/input_Date Created_Job.JobCrea'), '12/Feb/2019')
Actaully i have just tried to cross check to verify if the text isnt as expected it should produce an error however it passes even though the value isnt correct. Please see -
WebUI.callTestCase(findTestCase('touchpoint examples/Login to CIPHR as HR - 9.1'), [:], FailureHandling.STOP_ON_FAILURE)
WebUI.maximizeWindow()
if (WebUI.verifyElementNotVisible(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/span_HR Admin'))) {
WebUI.click(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/span_Log Out_glyphicons glyphi'))
WebUI.click(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/span_HR Admin'))
} else {
WebUI.click(findTestObject('V9.1 Testing/Page_CIPHR Self Service 9.1.0/span_HR Admin'))
}
WebUI.mouseOver(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/div_Training Admin'))
WebUI.click(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/div_Course Bank'))
WebUI.click(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/a_Insert New Record'))
WebUI.setText(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/input_Code _Code'),
'aa booming')
WebUI.setText(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/input_Title _Title'),
'aa testing 123')
WebUI.click(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/span_Days_k-link k-link-increa'))
WebUI.click(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/span_Minimum Places_k-link k-l'))
WebUI.click(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/span_Optimum Places_k-link k-l'))
WebUI.click(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/span_Maximum Places_k-link k-l'))
WebUI.click(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/span_Training CPD_k-link k-lin'))
WebUI.click(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/span_Hours_k-link k-link-incre'))
WebUI.setText(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/input_Administrator_Administra'),
'test')
WebUI.setText(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/input_Administrator Job Title_'),
'boss')
WebUI.click(findTestObject('Object Repository/Create a course/trying something else/Page_CIPHR Self Service 9.1.0/button_Update'))
WebUI.waitForElementVisible(findTestObject('Create a course/verify course created/td_aa testing 123'), 0)
WebUI.click(findTestObject('Create a course/verify course created/td_aa testing 123'))
WebUI.verifyElementAttributeValue(findTestObject('Create a course/verify course created/input_Days_k-formatted-value k'),
'aria-valuenow', '6', 0)
WebUI.verifyElementAttributeValue(findTestObject('Create a course/verify course created/input_Code _Code'), 'value', 'aa booming',
0)
WebUI.verifyElementAttributeValue(findTestObject('Create a course/verify course created/input_Administrator_Administra'),
'value', 'test', 0)
WebUI.verifyElementAttributeValue(findTestObject('Create a course/verify course created/input_Administrator Job Title_'),
'value', 'boss', 0)
Please note - that when i run the script it flys through all the other very elements but when it gets to these that are wrong, it does think about it for a second and then carries on
yea maybe @devalex88, is there anything you can advise?
So ive done some playing about with it, if i run my script, then after its verified them that are correct, then change the strings to something not correct and “run from here” just for the last 4 steps it picks up that they are not equal and gives me this error which i would expect -
Test Cases/touchpoint examples/Create course - HR - 9.1 FAILED.
Reason:
com.kms.katalon.core.exception.StepFailedException: Unable to verify if object 'Object Repository/Create a course/verify course created/input_Administrator_Administra' has attribute 'value' with value 'test' (Root cause: com.kms.katalon.core.exception.StepFailedException: Object 'Object Repository/Create a course/verify course created/input_Administrator_Administra' has attribute 'value' with actual value 'fsfgdsg' instead of expected value 'test')
at com.kms.katalon.core.keyword.internal.KeywordMain.stepFailed(KeywordMain.groovy:36)
at com.kms.katalon.core.webui.keyword.internal.WebUIKeywordMain.stepFailed(WebUIKeywordMain.groovy:65)
at com.kms.katalon.core.webui.keyword.internal.WebUIKeywordMain.runKeyword(WebUIKeywordMain.groovy:27)
at com.kms.katalon.core.webui.keyword.builtin.VerifyElementAttributeValueKeyword.verifyElementAttributeValue(VerifyElementAttributeValueKeyword.groovy:109)
at com.kms.katalon.core.webui.keyword.builtin.VerifyElementAttributeValueKeyword.execute(VerifyElementAttributeValueKeyword.groovy:70)
at com.kms.katalon.core.keyword.internal.KeywordExecutor.executeKeywordForPlatform(KeywordExecutor.groovy:56)
at com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords.verifyElementAttributeValue(WebUiBuiltInKeywords.groovy:3234)
at com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords$verifyElementAttributeValue.call(Unknown Source)
at Create course - HR - 9.1.run(Create course - HR - 9.1: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.RawTestScriptExecutor.runScript(RawTestScriptExecutor.java:34)
at com.kms.katalon.core.main.RawTestScriptExecutor.doExecute(RawTestScriptExecutor.java:29)
at com.kms.katalon.core.main.TestCaseExecutor.processExecutionPhase(TestCaseExecutor.java:298)
at com.kms.katalon.core.main.TestCaseExecutor.accessMainPhase(TestCaseExecutor.java:290)
at com.kms.katalon.core.main.TestCaseExecutor.execute(TestCaseExecutor.java:224)
at com.kms.katalon.core.main.TestCaseMain.runTestCaseRawScript(TestCaseMain.java:143)
at com.kms.katalon.core.main.TestCaseMain$runTestCaseRawScript$0.call(Unknown Source)
at TempTestCase1551355290706.run(TempTestCase1551355290706.groovy:98)
It seems to be working fine but did have some inconsistent runs
In other words, be sure you’re not building “truth” from a starting point of falsehood. It’s just too damn easy to do and we ALL do it. With a flaky test, start over, question everything you think you know.
Haha you are so right with that quote, i think im kididng myself that its resolved, ive taken the solution mark away. Im going to do some more digging trying different scenaios to see if i can replicate again and then have a deeper look as to what might be causing it.
Ok so its definately not fixed - I have changed a few elements to try a different scenario and it is passing. I have changed the attribute value to something different to what has been inputted in previous steps, so from my understanding because it doesnt equal ‘hfhar’ instead the field is populated with ‘test’ it should through me an error?
Ultimately im attempting to verify the input into a element is correct - if anyone knows a way to do this any help will be appreciated
Thanks for the help mate, so it stopped on this step for the 20 secs then carried on, yes my default is set to STOP_ON-FAILURE so surely it should have thrown an error?
hahah - So the value thats in the element (administrator) is test (so its wrong) so im expecting an error telling me that it expects “hfhar” but has “test”. All im doing is verifing after to check that the correct string was inputted as on some pages we have had this bug in the past.
Hope that make sense, sorry if i confused you earlier
There’s nothing wrong with what you’e trying to do (assuming I’m understanding you correctly). However, start from a known state. This goes back to the earlier conversation. I don’t think you have a known state.
Steps:
Make the test work for reasons you can prove.
Now check your reasoning: Break it. Break it in such a way that it challenges your reasoning.
Did it break exactly how you expected? No? Then you failed at #1 - NOT #2
If you can break it in ways you can predict, then you have a known state. From there, you repeat the steps above in multiple different ways (each little test then “shores up” your reasoning and makes you feel good about the test as whole).
Or you can do what the pretenders do. Wing it and hope for the best. Your call.
I should add: If Katalon is broken in the way you’re suggesting, where’s the evidence? Where are the many hundreds of reports we would surely see if that were the case?
So I’m saying, take a long hard look at steps 1 and 2. The time is worth it.
(Aside: I’ve changed the title of this thread to better reflect what’s going on)