Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
175 views
in Technique[技术] by (71.8m points)

How to handle Handle the dynamic element ids in Selenium Webdriver

I am new to Selenium, I have started learning Selenium Web driver, on part of that, i have taken 'Yahoo.com' as application to log in automatically using web driver.I have strange problem, every time the id of the 'username' and 'password' is being changed.

I have tried following code:

WebElement user = driver.findElement(By.id("username"));
WebElement password = driver.findElement(By.id("passwd"));

Everytime these ids are being changed :(

Please help me how to handle this scenario.

Thanks in advance,

Raj

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Checked with site yahoo.com site. I have modified my code since the name/ids were different for chrome and firefox. The below code works fine with Chrome and Firefox.

Try the below code:

WebElement user = driver.findElement(By.xpath("//input[@placeholder='Yahoo ID' or @placeholder='Yahoo username']"));
WebElement password = driver.findElement(By.xpath("//input[@placeholder='Password']"));

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...