我有一個已經與Selenium Flex重新編譯的Flash應用程序。
使用FlashFirebug我能夠找到該應用程序的定位器,並且我已經使用Selenium RC使用selenium flex API編寫腳本,當我運行腳本時,這些定位器已被識別但操作無法執行。
在硒IDE中也可以識別這些定位器,但無法執行類似點擊之類的操作。在這裏,我已將user-extension.js附加到我的IDE中。無法使用selenium flex api執行點擊按鈕?
2
A
回答
3
這是我怎麼會找到你的問題的根本原因:
- 確保您的* .swf文件(Flex應用程序)的反對Selenium-Flex API *庫名爲.swc編譯正確
- 運行您在帶有Javascript調試控制檯的Web瀏覽器中swf(例如,帶有Firebug的Firefox)。
- 使用JavaScript控制檯,使用它的DOM ID獲取SWF的引用 -
document.getElementById(swfId)
- 現在,測試Flex的硒,通過運行測試的一個符合到您的SWF OK命令,它所公開的硒。這些命令是在上一步獲得的對象上執行的Javascript函數 - 有關詳細信息,請參閱accessing a Flex app from Javascript。所有Flex-Selenium公開的命令都可以在Commmands.as的Flex-Selenium源代碼中找到。例如,
ExternalInterface.addCallback("doFlexMouseDown", mouseCommands.doFlexMouseDown);
表示名爲的Javascript函數doFlexMouseDown(在MouseCommands.as中定義)已在您的swf中公開。執行Javascript表達式typeof document.getElementById('swfId').doFlexMouseDown
應評估爲函數(不是undefined)。你也應該可以在不出錯的情況下調用這個函數 -document.getElementById(swfId).doFlexClick('idOfFlexObject')
其中idOfFlexObject
是swf中某個對象(例如一個按鈕)的ID。
- 因此,現在您應該能夠找到您通過硒針對您的swf調用時遇到問題的命令,並在您的Javascript調試控制檯中針對swf對錯誤進行測試。
- 如果您的swf確實是針對您的swf正確編譯的,那麼當您針對您的swf調用相應的Javascript函數時,您很可能會收到錯誤(Javascript函數本身已定義並正確顯示給Javascript,當它被調用時發生在你的swf中)。然後,通過下載Flex-Selenium的源代碼(請參閱以前的超鏈接)並將Flex源代碼放入其搜索路徑中,將Flex調試器附加到您的swf中,然後找到此錯誤的原因。您將在執行失敗的命令時放置一個斷點。根據我自己的經驗,我必須定製並修復Flex-Selenium源代碼中的小錯誤。
- 如果您在Javascript調試控制檯上沒有發現錯誤,那麼您應該在Selenium RC未能針對您的swf運行命令的情況下發布堆棧跟蹤,因爲那樣可能會導致您使用或配置了Selenium RC或Selenium IDE)是問題所在。
0
這很簡單,通過SFAPI(Slenium的Flex API) 點擊Flex應用程序,你必須編譯SeleniumFlexAPI Flex代碼。SWC文件,您將在SFAPI文件夾中獲得,對於 你需要遵循這些步驟SFAPI,這些文件See here
相關問題
- 1. Selenium - 無法點擊按鈕
- 2. Selenium c#:無法點擊按鈕
- 3. Python Selenium:無法點擊按鈕
- 4. 無法點擊Selenium中的按鈕
- 5. Python Selenium無法點擊提交按鈕
- 6. 無法在nightwatch.js中使用硒webdriver執行按鈕點擊
- 7. 無法點擊Safari中使用Selenium WebDriver按鈕
- 8. 執行按鈕與點擊
- 9. 按鈕點擊執行PHP
- 10. 使用python + selenium點擊按鈕
- 11. 使用Selenium的點擊按鈕的Python
- 12. Selenium中的按鈕點擊
- 13. c#selenium點擊div按鈕
- 14. 無法點擊Paginator按鈕
- 15. 無法點擊按鈕
- 16. 按鈕無法點擊
- 17. 無法點擊按鈕
- 18. 無法點擊按鈕
- 19. 按鈕無法點擊
- 20. 在JSF按鈕上點擊執行java方法點擊
- 21. 無法通過按鈕點擊執行簡單的JS
- 22. 無法確定哪個代碼按鈕點擊執行
- 23. Selenium不會用python點擊按鈕?
- 24. 麻煩用Selenium和Java點擊按鈕
- 25. 用selenium和Python點擊'onclick'按鈕
- 26. 在Android SDK中執行點擊按鈕
- 27. 無法使用Selenium IDE選擇按鈕
- 28. 執行測試腳本時無法使用硒點擊登錄按鈕
- 29. Selenium:無法點擊Facebook的喜歡按鈕
- 30. 無法通過selenium webdriver點擊updatepanel中的按鈕java