2011-12-16 33 views
0

我使用硒自動化一些IT管理任務,NAS(我通過內部網頁訪問)需要一些外部驅動器換出。我認爲網頁界面使用AJAX來動態地改變屏幕,並且通常會因使用硒在網頁中瀏覽的能力而變得混亂。硒與AJAX點擊和隨機生成的目標ID

的NAS供應商具有網絡接口的現場演示: http://www.synology.com/us/products/demo/index.php

這是相當多的Web界面對NAS相同。

任何人有任何提示如何瀏覽這種類型的頁面? (如何找到clickat()來打開控制面板的元素定位器)。每次登錄時,ID似乎都是隨機生成的,例如「target id = ext-gen525」

回答

1

您可以使用CSS或XPATH定位器查找元素。 在您的應用程序使用AJAX控件時,請在硒命令之間等待一段時間(通過使用適當的等待條件)。

下面是示例代碼,點擊「控制面板」,然後點擊「用戶」(在演示Web界面:http://www.synology.com/us/products/demo/index.php

//After login to http://demo.synology.com:5000 
    selenium.click("//div[text()='Control Panel']"); 
    Thread.sleep(3000); // Use proper wait conditions 
    selenium.click("//div[text()='User']"); 
+0

是的,這工作,我跟着你在說什麼。我可以使用firefox插件DOM Inspector和XPather然後'通過點擊選擇元素'來獲得明智的目標,例如按鈕上的文本。 我正在使用的硒IDE已暫停,而不是睡眠,但我已經通過腳本步驟,它的工作原理,我會發布它,一旦我完成了它,以防某人有我確切的問題,只是想剪切並粘貼答案。 – daniel 2011-12-19 02:56:22