Skip to main content

Using chrome console to test xPath and css selectors

Note: If you are new to java and selenium then start with selenium java training videos. 
 
 
Since the advent of selenium there have been many plugin to test xPath / css selectors but you don’t need any of them if you have chrome browser. Using Chrome console you can test both xPath and css selectors. Launch website to be tested in chrome browser and hit F-12 and you would see chrome console opened in lower pane of application -


Screenshot from 2016-07-27 13:35:38.png

Hit escape key and console would open another pane to write element locators -


Screenshot from 2016-07-27 13:37:30.png

And now you can start writing xPath or css selectors in chrome console and test them -
The syntax for writing css id - $$(“”)


Screenshot from 2016-07-27 13:43:27.png


And hit the enter key. If your expression is right then html snippet of the application element corresponding to the css selector would be displayed -


Screenshot from 2016-07-27 13:45:11.png


If you mouse over the html snippet in chrome console then it would highlight the corresponding element in application -

Screenshot from 2016-07-27 13:47:51.png

If you want to clean console of previously written element selectors then just hit ctrl+L keys and chrome console would be empty again.


Process of testing xPath selector is same as css selector except that syntax to test xPath is -


$x(“your_xpath_selector”)


Screenshot from 2016-07-27 13:55:04.png

So no more using any plugin to test element locators :-)

Is there any other innovative way you use to test your element locator?

Popular posts from this blog

Which location strategy to use with mobile apps

Locator Strategy for native mobile apps IDs and accessibility locators are still king. NSPredicate (iOS) and UIAutomator (Android) are great—mainly better than XPath —but they do not beat a good accessibility id or resource-id . And CSS selectors don’t exist for native apps (only for WebViews). Locator Strategy Ranking Rank iOS (native) Android (native) Why 1 Accessibility ID → name / label (via MobileBy.AccessibilityId or @iOSXCUITFindBy(accessibility = "Mehr anzeigen") ) Accessibility ID → content-desc (via MobileBy.AccessibilityId ) or @AndroidFindBy(accessibility = "Letzte Aktivitäten, Überschrift") ) Fast, readable, stable when set intentionally; improves a11y. 2 Stable identifiers (rare on iOS) resource-id (via new UiSelector().resourceId(...) ) or @AndroidFindBy(id = "load_more") id is just shorthand for matching the native Android resource-id attribute. Appium automatically maps id → resource-id If you pass only "load_more"...

Verify email confirmation using Selenium

Note: If you are new to java and selenium then start with selenium java training videos .     Email confirmation seems to be integral part of any registration process. I came across an application which lets you provide your email address. You can follow the sign up link in you mail and then complete the registration process. Lets consider we provide GMail address for it. Now if were to use only Selenium then we would have to follow following steps - Launch GMail using Selenium; Some how search for new mail in the list of available mails; Some how click on it; Parse the mail message; Get the registration link; Follow up with registration process What do you think of an approach in which you can

Selenium Tutorial: Get attribute of an element

With Selenium 1.0 Let us consider Google Search Box for example and its "max length"is to be retrieved. Using xPath -         String var = selenium.getAttribute("//input[@name='q']/@maxlength");         System.out.println(var); Using css locator -                        String var = selenium.getAttribute("css=input[name='q']@maxlength");         System.out.println(var);        With Selenium 2.0 (WebDriver)        Using xPath -         String var = webDriver.findElement(By.xpath("//input[@name='q']")).getAttribute("maxlength")         System.out.println(var); Using css locator -                     ...