差異處
這裏顯示兩個版本的差異處。
Both sides previous revision 前次修改 下次修改 | 前次修改 | ||
rf:rf:migratetoselenium2library [2016/03/17 15:12] tony |
rf:rf:migratetoselenium2library [2023/06/25 09:48] (目前版本) |
||
---|---|---|---|
行 2: | 行 2: | ||
====== Migrate SeleniumLibrary to Selenium2Library ====== | ====== Migrate SeleniumLibrary to Selenium2Library ====== | ||
===== Introduction ===== | ===== Introduction ===== | ||
- | 分享從SeleniumLibrary(SL1)升級到Selenium2Library(SL2)的歷程與方法。 | + | 分享從SeleniumLibrary(SL1)升級到Selenium2Library(SL2)的歷程與方法。\\ |
+ | \\ | ||
+ | Note. 某一天看到Selenium2Library從3.0開始後,已經於自身library中提供wrapper的實作,要升級的人可以嘗試看看。[[http://robotframework.org/Selenium2Library/Selenium2Library.html|link]] | ||
===== Browser ===== | ===== Browser ===== | ||
由於SL1與SL2支援的瀏覽器版本有差異存在,有考慮過使用[[rf:rf:usecustomizedfirefox|portable的firefox]],但發現難以支援所有需要的作業系統。因此最無痛的方式,就是透過Remote Selenium,可參考[[rf:rf:seleniumgrid|此篇]]教學。 | 由於SL1與SL2支援的瀏覽器版本有差異存在,有考慮過使用[[rf:rf:usecustomizedfirefox|portable的firefox]],但發現難以支援所有需要的作業系統。因此最無痛的方式,就是透過Remote Selenium,可參考[[rf:rf:seleniumgrid|此篇]]教學。 | ||
行 52: | 行 55: | ||
===== 其它問題 ===== | ===== 其它問題 ===== | ||
==== StaleElementReferenceException: Message: Element is no longer attached to the DOM ==== | ==== StaleElementReferenceException: Message: Element is no longer attached to the DOM ==== | ||
- | 更新為SL2後,常會在不定位置出現StaleElementReferenceException。[[http://stackoverflow.com/questions/5709204/random-element-is-no-longer-attached-to-the-dom-staleelementreferenceexception|爬文]]後,別人是說某個節點還不是有效時就去操作它而導致的。因此必須先透過Wait Until相關keywords等待節點出現後,再進行操作。 | + | 更新為SL2後,常會在不定位置出現StaleElementReferenceException。[[http://stackoverflow.com/questions/5709204/random-element-is-no-longer-attached-to-the-dom-staleelementreferenceexception|爬文]]後,別人是說某個節點還不是有效時就去操作它而導致的。因此必須先透過Wait Until相關keywords等待節點出現後,再進行操作。\\ |
+ | [[http://www.seleniumhq.org/exceptions/stale_element_reference.jsp|more..]] | ||
+ | ==== Firefox無法點擊可視範圍外的DOM element ==== | ||
+ | 以下是我使用會有問題的版本資訊: | ||
+ | * selenium: 3.8.0。 | ||
+ | * seleniumLibrary: 3.0.0。 | ||
+ | * selenium-server-standalone: 3.8.1。 | ||
+ | * geckodriver: 0.19.0、0.19.1。 | ||
+ | * firefox: 57.0.2、57.0.4。 | ||
+ | 同樣的selenium版本下,chrome沒這問題: | ||
+ | * chrome: 63.0.3239.84。 | ||
+ | * chromedriver: 2.34.522940。 | ||
+ | 起初解決這問題使用scrollbar控制可視範圍,但實在太麻煩,所以改使用chrome去測試。 | ||
===== Reference ===== | ===== Reference ===== | ||
* [[https://github.com/robotframework/Selenium2Library/wiki/Differences-From-SeleniumLibrary|Differences From SeleniumLibrary]] | * [[https://github.com/robotframework/Selenium2Library/wiki/Differences-From-SeleniumLibrary|Differences From SeleniumLibrary]] |