1

我最近開始使用Selenium來測試具有webviews的應用程序。那麼我的WebView代碼:使用Selenium Webdriver與紅寶石的CSS選擇器/ xpath查找元素

<div class="class1 class2 class3 class4" style="padding: 4px;" id="_6bd7b91a-214c-4075-b7db-dcaa08155e1a"> 
    <span class="class5" style="font-weight: bold; text-decoration: underline;">This is TITLE</span> 
    <div class="class6" dd:contenttype="content_type1" dd:concept="TITLE" id="_1d8c4490-d0c1-42ed-a93e-e92ca570dd32"> 
    <div class="class7"> 

我寫一個可重用的代碼,以找到自動化測試的元素。在上面的代碼中,可以使用2種方法找到元素,我可以根據'dd:concept="TITLE"'或通過文本"This is TITLE"查找它;但我在Selenium找不到任何東西,我可以用我想要的方式找到元素。

我正在使用「find_element」查找元素,但沒有什麼可以將'dd:concept="TITLE"'"This is TITLE"作爲參數傳遞給它。

我試過 - driver.find_element(:css, "span.class5")driver.find_element(:css, "div.class1 class2 class3 class4 span.class5")

反正我有可以找到關於使用Selenium的驅動程序和一些文字作爲其arguement web視圖元素?

回答

1

FindElement(By.CssSelector(「[dd:concept ='TITLE']」))should be working。

啊,你使用的是紅寶石。

我做了一點的時候,您可以試試這個:

編輯再次(:: 「[概念= 'TITLE' DD]」 CSS)

find_element。

我建議逃脫:在標籤名稱DD:概念,就像這樣:

find_element(:CSS, 「[DD \:概念= '標題']」)

+0

感謝理查德!但它對我沒有多大幫助。我正在做$ driver.find_element(By.CssSelector(「[dd:concept ='TITLE']」))並且它給了我「NameError:未初始化的常量由 from(pry):3:in block(3 levels)在'「錯誤。 –

+0

我想find_element唯一的參數是其中的一個 - (:class,:class_name,:css,:id,:link_text,:link,:partial_link_text,:name,:tag_name,:xpath) –

+0

我試過這種方式。獲取「Selenium :: WebDriver :: Error :: UnknownError:處理命令時發生未知的服務器端錯誤。」錯誤 –

相關問題