2016-02-04 3 views
-2

Я написал программу, чтобы щелкнуть ссылку, ввести имя пользователя и пароль, а затем нажать кнопку «Signin», но я не получаю вывод и не даю мне ошибку. Программа как нижеЯ написал программу для входа в yahoomail. но это дало мне ошибку

import org.openqa.selenium.By; 

import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.firefox.FirefoxDriver; 

public class CssSelector3 { 

    public static void main(String[] args) { 
     WebDriver driver = new FirefoxDriver(); 
     driver.get("http://www.yahoo.com"); 
     driver.manage().window().maximize(); 

     driver.findElement(By.xpath("//*[@id='yui_3_12_0_1_1454585688215_223']/div/ul[1]/li[1]/a")).click(); 
     driver.findElement(By.cssSelector("#login-username")).sendKeys("[email protected]"); 
     driver.findElement(By.cssSelector("#login-passwd")).sendKeys("tester1234"); 
     driver.findElement(By.cssSelector("#login-signin")).click(); 
    } 
} 

Программа выполняет только до окна разворачивания части, а затем он останавливается. Может ли кто-нибудь помочь мне в этом.

+0

Можете ли вы разместить свой журнал? –

+0

did'nt получить это ..? войти как в ?? –

+0

Какой тип ошибки вы получаете? –

ответ

1

В вашей ситуации неправильная кнопка входа Xpath. Yahoo генерирует каждый раз новый идентификатор для своей кнопки входа. Вы можете попробовать следующий код.

public static void main(String[] args) { 

     WebDriver driver = new FirefoxDriver(); 
     driver.get("http://www.yahoo.com"); 
     driver.manage().window().maximize(); 

     driver.findElement(By.xpath("//*[text()='Sign In']")) 
       .click(); 
     driver.findElement(By.cssSelector("#login-username")) 
       .sendKeys("[email protected]"); 
     driver.findElement(By.cssSelector("#login-passwd")).sendKeys("tester1234"); 
     driver.findElement(By.cssSelector("#login-signin")).click(); 
    } 
+0

Привет, Амит ... Спасибо за ответ ... это сработало –

+0

Но как получился этот текст? // * [text() = 'Sign In'] "? –

+1

В селене писать xpath - это искусство. Мы должны писать его независимо от любого браузера, и поэтому требуется меньшее обслуживание, если пользовательский интерфейс изменился. В селене вы можете писать Xpath разными способами. Просто следуйте этой [Xpath Documentation] (https://www.w3.org/TR/xpath20/) для другой новой стратегии. –

Смежные вопросы