1

私は学習者です。Selenium Webdriver を使用して Gmail のログアウト機能を自動化しようとしていますが、できません。

ログアウトには 2 つのフェーズがあります。最初に上部の右リンクをクリックし、そのボックスが表示されたら、ログアウトをクリックします。私はそうすることができません。

<span id="gbi4t" style="max-width: 76px; text-align: left;">Mahmood Ali</span>

<a id="gb_71" class="gbqfbb" href="?logout&hl=en&hlor" onclick="gbar.logger.il(9,{l:'o'})" role="button" target="_top">Sign out</a>

ここに私のxpathがあります

//*[@id="gbi4t"] -> Clicking that top to get the logout pop up

//*[@id="gb_71"] -> To logout the gmail application

私は次のように試しました

driver.findElement(By.id("gbi4t")).click();   OR

driver.findElement(By.xpath("//*[@id='gbi4t']")).click();

driver.findElement(By.id("gb_71")).click();  OR

driver.findElement(By.xpath("//*[@id='gb_71']")).click();

そこにいくつかのアイデア?

4

4 に答える 4

0

解決済みの例を次に示します::

package testme;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;


public class testexample {

    public static WebDriver driver;
    public static WebElement element;

    public static void main(String args[]) throws InterruptedException {
        //setting the chrome driver
        System.setProperty("webdriver.chrome.driver", "C:/Users/workspace/Downloads/chromedriver.exe");
        driver = new ChromeDriver();


        driver.get("http://www.gmail.com");

        element =driver.findElement(By.linkText("Sign in"));
        element.click();
        Thread.sleep(1000);
        element = driver.findElement(By.id("Email"));
        element.sendKeys("yourusername@gmail.com");
        element = driver.findElement(By.id("Passwd"));
        element.sendKeys("yourpassword");
        element.submit();

        Thread.sleep(1000);
        //click on the logout link step 1
        element = driver.findElement(By.xpath("//*[@id='gb']/div[1]/div[1]/div/div[3]/div[1]/a"));
        element.click();
        // click on actual logout button step 2
        element = driver.findElement(By.id("gb_71"));
        element.click();
        //closing the webdriver window after successful completion of the test
        driver.close();
        }
    }
于 2013-12-01T14:51:28.230 に答える