2016-08-02 81 views
-1
package javapackage; 

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

import java.util.concurrent.TimeUnit; 

import org.openqa.selenium.By; 
public class SeleniumQuora { 
public static void LaunchQuora() 
{ 
    System.setProperty("webdriver.chrome.driver","E:\\SBI SO\\Selenium\\Extracts\\chromedriver.exe"); 
    WebDriver driver=new ChromeDriver(); 
    driver.get("https://www.quora.com/"); 
    driver.manage().window().maximize(); 
    driver.manage().timeouts().implicitlyWait(13, TimeUnit.SECONDS); 
    driver.findElement(By.xpath("//*[@id='__w2_lIh8Ilg_google_connect_button']/span")).click(); 

    } 

public static void main(String[] args) { 
    LaunchQuora();}} 

這段代碼應該點擊signIn頁面中的「Continue with Google」選項。但沒有任何反應。我知道它非常基本,但我搜索了大部分地方,找不到答案。我的硒webdriver腳本不能在Chrome上工作

+1

你所說的 「什麼也沒發生」 的意思是?沒有瀏覽器窗口打開?怎麼樣記錄輸出?堆棧跟蹤?你如何調用什麼操作系統的測試? –

+0

沒有彈出窗口顯示,應該問我繼續我的谷歌ID。 –

回答

0

其實你是定位錯誤的元素,在這個website有id爲__w2_lIh8Ilg_google_connect_button因爲我看到沒有元素,可提供動態生成的ID,所以,如果你想點擊Continue with Google按鈕簡單地嘗試如下使用By.linkText(): -

System.setProperty("webdriver.chrome.driver","E:\\SBI SO\\Selenium\\Extracts\\chromedriver.exe"); 

ChromeOptions options = new ChromeOptions(); 
options.addArguments("--disable-popup-blocking"); 
WebDriver driver = new ChromeDriver(options); 

driver.get("https://www.quora.com/"); 
driver.manage().window().maximize(); 
driver.manage().timeouts().implicitlyWait(13, TimeUnit.SECONDS); 
driver.findElement(By.linkText("Continue with Google")).click(); 

希望它能幫助.. :)

+0

完美。它的工作,謝謝你Saurabh。出於好奇,我可以問一下,如果我必須使用xpath,我會怎麼做? –

+0

@ShashankShukla沒有必要使用'xpath',但是如果需要xpath,你可以使用xpath來代替id,因爲id是在這裏動態生成的,你可以使用這個'xpath':'// a [@class =' google_button submit_button']' –