2015-03-19 53 views
1

我正在使用Selenium WebDriver和Java編寫自動測試,並且我在日曆中選擇了日期問題。JAVA,硒 - 使用變量從日曆中選擇日期

這是我的代碼找到並打開日曆:

driver.findElement(By.xpath("//div[@id='research-metrics']/div[2]/p[2]")).click(); 
driver.findElement(By.xpath("//*[text()='27']")).click(); 

27 - 這是所選擇的日期。我想知道是否可以使用一些變量來改變它,而不是改變這一行。

你知道該怎麼做嗎?

+0

你想能夠動態地改變期望的選擇日期? – Andremoniy 2015-03-19 12:06:54

+1

嘗試類似:'xpath((「// * [text()='」+ i +「']」))'或者將語句設置爲一個字符串並將其放入xpath? – Zorian 2015-03-19 12:09:28

回答

0
// If it some kind of date picker ui and NOT hidden then you can simply pass a parameter to the selector. 
String dateToPass = "30"; 
driver.findElement(By.xpath("//*[text()='" + dateToPass + "']")).click(); 
+0

我已經試過這個,但我可能寫錯了,它沒有工作,它現在很perfetly,非常感謝你! :) – 2015-03-19 12:25:57

+0

那麼你會接受答案嗎? – Saifur 2015-03-19 12:59:43

+0

當然,對不起!祝你有美好的一天:) – 2015-03-19 13:39:23

0

試過這個東西嗎?
1.

int date = 15; 
driver.findElement(By.xpath(("//*[text()='"+ date + "']")).click(); 

2.

int date = 15; 
String statement = ("//*[text()='"+ date + "']"); 
driver.findElement(By.xpath(statement).click(); 

,然後只用一種方法或用手改變int -variable(日期)