2016-04-08 2 views
0

Ich habe versucht mehrere Logins auszuführen (mit TestNG), mein erster test1 ist bestanden, aber verbleibende Tests geben einen Fehler wie "Element ist nicht derzeit sichtbar und darf daher nicht mit Befehlsdauer oder Timeout interagiert werden: 28 Millisekunden ". Mit freundlicher lösen mein ProblemElement ist momentan nicht sichtbar und kann daher nicht mit Befehlsdauer oder Zeitüberschreitung interagiert werden: 28 Millisekunden

String baseUrl = "******************"; 
    WebDriver driver= new FirefoxDriver(); 
    @BeforeTest 
    public void b_url() 
    { 
     driver.get(baseUrl); 
    } 
    @Test(priority=1) 
    public void login1() throws InterruptedException 
    {  
     driver.manage().window().maximize(); 
     driver.manage().deleteAllCookies(); 
     driver.findElement(By.xpath("//*[@id='w1']/li/a")).click(); 
     driver.findElement(By.id("LoginFormusername")).sendKeys("Boopathi"); 
     driver.findElement(By.id("LoginForm-password")).sendKeys("test"); 
     driver.findElement(By.xpath("//*[@id='login-form']/div/div/div/div/div[3]/input")).click(); 
     Thread.sleep(3000); 
     driver.findElement(By.xpath("//*[@id='w6']/li/a")).click(); 
     driver.findElement(By.xpath("//*[@id='w7']/li[3]/a")).click(); 
     //driver.navigate().refresh(); 
    } 

    @Test(priority=2) 
    public void login2() throws InterruptedException 
    { 

     driver.manage().window().maximize(); 
     driver.manage().deleteAllCookies(); 
     driver.findElement(By.xpath("//*[@id='w1']/li/a")).click(); 
     driver.findElement(By.id("LoginForm-username")).sendKeys("john"); 
     driver.findElement(By.id("LoginForm-password")).sendKeys("test"); 
     driver.findElement(By.xpath("//*[@id='login-form']/div/div/div/div/div[3]/input")).click(); 
     Thread.sleep(6000); 
     driver.findElement(By.xpath("//*[@id='w6']/li/a")).click(); 
     driver.findElement(By.xpath("//*[@id='w7']/li[3]/a")).click(); 
     driver.navigate().refresh(); 
    } 

    @Test(priority=3) 
    public void login3() throws InterruptedException 
    { 

     driver.manage().window().maximize(); 
     driver.manage().deleteAllCookies(); 
     driver.findElement(By.xpath("//*[@id='w1']/li/a")).click(); 
     driver.findElement(By.id("LoginForm-username")).sendKeys("Kamal"); 
     driver.findElement(By.id("LoginForm-password")).sendKeys("test"); 
     driver.findElement(By.xpath("//*[@id='loginform']/div/div/div/div/div[3]/input")).click(); 
     driver.navigate().refresh(); 
     Thread.sleep(6000); 
     driver.findElement(By.xpath("//*[@id='w6']/li/a")).click(); 
     driver.findElement(By.xpath("//*[@id='w7']/li[3]/a")).click(); 

    } 

    @AfterTest() 
    public void logout() 
    { 
     driver.quit(); 
    } 

Antwort

1

Navigieren Anwendung jedes Mal

@BeforeMethod 
public void b_url() 
{ 
    driver.get(baseUrl); 
} 

hinzufügen Aktualisierungen in jedem Test nach Cookies

driver.navigate().refresh(); 

Lassen Sie mich dies nicht

+0

Zustimmen wissen Löschen funktioniert! '@ BeforeTest' von TestNG! =' @BeforeTest' von JUnit! – juherr