Click on Span Object not working occasionally
SOLVED- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Click on Span Object not working occasionally
I have the following menus in my application
When I click on 'Self Service Tool' menu or hover over it, the following submenus displays
Here is my code to click on the 'Self Service Tool' submenu.
var Wait = require("Wait");
var browser = Sys.Browser();
var page = browser.Page("*");
Wait.findObject("//li/a/span[contains(text(),'Self Service Tool')]").Click();
Delay(1000);
Wait.findObject("//li/a/span[contains(text(),'Prior Authorization Work Queue')]").Click();
Delay(3000);
----------------------------------
function findObject(selector)
{
var browser = Sys.Browser();
var page = browser.Page("*");
var obj = page.WaitElement(selector,1000);
while (obj.Exists == false){
obj = page.WaitElement(selector,1000);
}
return obj;
}
The click on the 'Self Service Tool' object occasionally not working. The HTML attributes of the object are shown below.
In the logs, I can see Click is performed but the sub-menu list is not populating
Solved! Go to Solution.
- Labels:
-
Script Tests
-
Web Testing
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @cadeo,
Instead of you use Span try using the <a> tag like below. By doing that it takes the full area of the object.
wait.findObject("//li/a[contains(text(),'Self Service Tool')]").Click();
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Agree with @tvklovesu, you can try removing span from your xpath OR instead of using //li/a[contains(text(),'Self Service Tool')] you can use "." to expand your search //li/a[contains(.,'Self Service Tool')]. I also would highly recommend using a browser extension like ChroPath (or similar) to help you find and validate your xpath objects. TestComplete doesn't always use the best mapping references, so a secondary tool can help ease the burden of relying on the Object Spy tool or weeding through the Object Browser.
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@cadeo, just realized there is an extra space at the beginning and end of the text. thats why its not able to find the object. use the normalize-space method in the xpath.
ps: Do not copy and paste the below syntax as sometimes the quotes might be replaced with special chars and will not work in code. Please type manually in the code.
//li/a[normalize-space(.) ='Self Service Tool']
