我是一個總的硒新手,所以下面的代碼是遠遠不完美(由於它不起作用的事實支持)。我想獲取表中的第一行,並檢查它是否有一個指定的CSS類。Selenium WebDriver - 獲取C#中第一行的表#
到目前爲止,我多次嘗試獲取第一行之後,我一直沒有成功。以下是我已經試過 -
我使用(RemoteWebElement)之所以投這裏是因爲(IWebElement)投不工作。這雖然不起作用。
IWebElement first_row = (RemoteWebElement)((IJavaScriptExecutor) Driver).ExecuteScript("return $('#headTable > tr:visible:first')");
下面的行獲取所有可見行的文本。這工作。
IWebElement first_row = Driver.FindElement(By.CssSelector("#headTable"));
另一個試圖讓第一排。這不起作用
IWebElement first_row = Driver.FindElement(By.CssSelector("#headTable")).FindElement(By.CssSelector("tr:visible:first"));
我已經從http://docs.seleniumhq.org/docs/03_webdriver.jsp#introducing-the-selenium-webdriver-api-by-example看着例子。但是他們是非常簡單的例子。
任何人都可以看到這裏有什麼問題嗎?另外,如果你有其他網站在C#中有幫助的例子的鏈接,我會很感激。謝謝。
一些功能我不熟悉webdriver的,但它使用jQuery的選擇引擎的,如果它發現jQuery的使用?原生瀏覽器選擇器引擎不支持':visible'或':first',因爲它們不是CSS選擇器。 – BoltClock 2013-04-22 14:40:26
我不知道jQuery選擇器引擎。你能指點我參考一個頁面/例子嗎? – neuDev33 2013-04-22 14:43:33
http://api.jquery.com/category/selectors - 您正在使用的腳本'$('#headTable> tr:visible:first')'是一個jQuery調用,它帶有一個只針對jQuery的選擇器,而不是CSS的一部分。據我所知,WebDriver搭載到瀏覽器的原生CSS選擇器引擎上,但我不確定是否有辦法掛鉤不同的引擎。 – BoltClock 2013-04-22 14:47:09