Selenium IDE工具界面剖析
資源推薦:
視頻資源:?軟件測試相關系列視頻
社區資源:?自動化測試交流群
Selenium IDE簡介
????Selenium IDE(Integrated Development Environment),是Selenium工具套件中最簡單的工具,它可以快速的通過錄制回放功能創建測試腳本,這種特性類似于QTP,而且它的安裝和使用都非常的簡單。
????由于Selenium IDE功能簡單,適用范圍局限,很多情況下都被當做原型工具使用,而不會用作開發和維護復雜測試場景的解決方案。
????雖然學習Selenium IDE不需要什么其他知識基礎,但是至少你需要熟悉HTML,Javascript,和DOM(Document Object Model),通過這些知識可以更多的發揮該工具(Selenium IDE)的潛能。比如當我們進入關于Selenese命令“runScript”階段學習時,就需要使用到javascript知識。
????當使用Selenium IDE創建測試腳本時,Selenium IDE支持命令自動完成模式,這個特性主要是為了兩個目的:????
幫助測試人員更快的完成命令輸入
限制用戶輸入無效的Selenese命令
Selenium IDE特性
????
??菜單欄
????菜單欄位于IDE的最頂部,最常用的菜單包括:File,Edit和Options菜單。
??文件菜單
????
文件菜單包含創建,打開,保存,關閉測試相關選項
Tests保存為HTML格式
這里有最有用的選項“Export”,它允許將Selenese腳本保存為支持Selenium RC 和 Selenium WebDriver支持的測試腳本。
“Export Test Case As...”,可以到處當前的腳本。
“Export Test Suite As...”,當初當前測試套件所有腳本。
需要注意的是,自從Selenium IDE V1.9.1,測試腳本只能保存到如下格式的文件中。
.cs (C# source code)
.java (Java source code)
.py (Python source code)
.rb (Ruby source code)
? ?Edit菜單選項
它包含常用的選項:?Undo, Redo, Cut, Copy, Paste, Delete, and Select All.
這里有兩個最重要的選項:?"Insert New Command" 和 "Insert New Comment".? ? ? ??
????
最新插入的命令或注釋會放置在當前選擇命令行的上方
命令會被黑色字體標記
注釋會被紫色字體標記
???Options 菜單
????Options中提供給用戶擴展接口,以及各種各樣的Selenium IDE相關配置。
????我們先看下Options和 “Clipboard Format”選項:
????
Clipboard Format選項允許從IDE命令行編輯器復制命令并粘貼成為指定的代碼片段
粘貼成為目標代碼片段格式取決于在此所選擇的格式
HTML是默認格式
比如,當你選擇的代碼格式為“Java/JUnit 4/WebDriver”時,每個從Selenium IDE中復制的命令行會被粘貼成為java code.
Selenium IDE Options對話框
在菜單欄上點擊“Options > Options...”啟動Options對話框,Options中包含很多配置信息,我們將會選擇比較重要的進行解釋。
????
Default Timeout Value.這個時間指的是等待某個元素在頁面中出現 或 等待某元素變為可訪問狀態的等待時間,超時后會拋出相應的錯誤信息,這里默認超時時間是30000ms
Selenium IDE extensions.在這里可以對Selenium IDE特性進行擴展,可以通過訪問“http://addons.mozilla.org/en-US/firefox/”,并使用關鍵字“Selenium”搜索相關可用的擴展。
Remember base URL. 在此可以設置使Selenium IDE每次啟動時記住上次使用的Base Url,如果反選這個選項的話,IDE每次啟動時,將會保持Base Url空白。
Autostart record. 選擇該選項,每次重啟Selenium IDE時,都會默認開啟錄制狀態。
Locator builders. 在這里可以指定錄制腳本時使用locators的順序,locators就是元素定位選擇器,在如下配置的情況下,當你點擊一個帶有ID的元素時,IDE會優先使用id locator作為定位元素的選擇器,如果目標元素不存在ID時,Selenium會尋找name屬性作為第二選擇,依次類推直到找到可用的元素定位選擇器。
????Base URL 欄
????
Base URL有一個下拉菜單列表,它會記錄所有先前訪問的歷史。
通過Selenese命令“open”,可以將瀏覽器導航到指定的url所指頁面。
在本教程中我們會使用“http://newtours.demoaut.com”作為Base URL,這是HP為用于基于測試目的維護的web系統,這個web系統中包含所有本教程需要使用到的頁面元素。
使用Base URL時,對于訪問基于相對路徑的頁面時非常有用,比如這里指定Base URL的值為“http://newtours.demoaut.com”,可以使用Selenese “open”命令,并指定Target值為“sign-up”,Selenium IDE將會直接將瀏覽器導航到“sign-up”頁面,如下:
????
????Toolbar
| ?? | 通過這個控件控制腳本回放速度 |
| 開始/結束錄制會話,開啟后會將與瀏覽器的所有操作錄制成Selenese命令,并寫入到Editor面板中。 | |
| 執行整個測試套件,將會順序的執行測試面板中所有的測試案例。 | |
| 執行當前測試案例,僅會執行當前測試面板中被選中的測試腳本。 | |
| 暫停/恢復當前正在回放的測試腳本。 | |
| 單步調試,可以逐步執行測試腳本的命令,用于調試使用。 | |
應用匯總策略,通過rollup關鍵字將多個命令合并為一個,需要用戶自定義擴展。 |
????測試用例面板
????
同一時刻,可以在測試面板中打開多個測試腳本。
當打開的目標是一個test suite時,測試面板會加載當前測試套件下所有測試腳本列表。
測試用例名稱標注加粗字樣的為當前選中的測試腳本。
回放之后,每個測試腳本名稱會有字體背景著色,表示執行成功或失敗,綠色表示“成功”,紅色表示“失敗”。
測試用例面板底部顯示的是運行測試的總數及失敗的個數。
? ?
????Editor
????Editor中包含兩個視圖窗口:Table View 和 Source View.
????Table
? ??
Table視圖在大多數情況下是使用最頻繁的。
可以在這里創建和修改Selenese命令。
腳本回放之后,每個執行步驟都會被著色。
????
????
創建測試步驟,可以在“Command”文本框中輸入命令名稱
在鍵入命令時,文本框下拉列表會顯示所有可以匹配到的命令集合。
Target參數通常是一個元素定位器,或者作為參數值等,而Value通常會是參數變量名,輸入數據等。
????
????
????Source 視圖
????
source視圖通過HTML格式展示測試步驟。
可以在此視圖中創建、編輯Selenese命令。
????
????Log 面板
????log面板會實時顯示測試執行消息,實時更新日志并通知Selenium正在做的事情。
????Logs被歸類為4中類別
????Debug - 默認情況下,debug消息不會被顯示,這些debug信息主要是涉及到Selenium運行時使用到的技術相關信息,比如,加載了一個特定的模塊,一個特定的函數被調用過,加載了一個外部js文件等等。
????Info - info消息會告訴使用者Selenium IDE都執行了哪些Selenese命令。
????Warn - 某些特殊情況下,使用Selenese不當或環境等某種原因,會提示Warn消息。
????Error - 當Selenese命令執行失敗時,會有error消息,比如不滿足“verify”or "assert" 相關命令的條件時,也會有Error消息產生。
????
????
????Log信息可以通過類型進行過濾,比如選擇“Error”選項時,log面板中只會顯示error相關的信息。
????
????
????Reference 窗口(灰常有用)
????Reference窗口中顯示了當前選中的Selenese命令相關介紹,同時也對當前command的locator和value進行描述。
????
????UI-Element窗口
????UI-Element對于selenium用戶來說,相比較而言是較高級的話題,它使用JSON(Javascript Object Notation)來定義頁面、頁面元素的映射結構,我們可以在Selenium IDE中“Help”選項下找到“UI Element Documentation”,這里包含UI-Element更多詳細的內容。
????
????
????如下是一個使用UI-Element的一個例子。
????
????
????Rollup窗口
????Rollup允許將一組Selenese命令合并到一個步驟中,一組selenese命令稱為“rollup”,它嚴重的依賴于javascrip及“UI-Element”概念,類似于編程語言中的function。
????Rollup是可以重用的,一個“rollup”可以在測試腳本中多次使用,由于“rollup”是一系列命令的集合,所以它可以縮減測試腳本篇幅。
????
????如下展示了“rollup”窗口內容
????
????匯總
????
Selenium IDE是整個套件里最簡單的。
僅僅被用作一個原型工具
需要JS和HTML的知識。Rollup是一些可重用的命令集合。Locators是你告訴IDE怎么找到元素的描述。
Firebug是獲取locator值的工具。
菜單欄用來創建,修改,導出RC,WebDriver可以識別的格式的測試用例。
Selense命令的默認格式是HTML。
選項菜單提供了關于IDE更多配置。
Base URL基址在訪問相對地址比較有用。
測試用例面板顯示打開的case和關于測試結果的匯總。
Editor編輯器提供了修改腳本的入口
表格試圖以表格形式等你鍵入Command,target,value。而代碼視圖用HTML來顯示你的腳本。
日志和參考頁面提供了一些執行case可能需要的信息。
UI-Element和Rollup是給比較熟悉Selenium工具的用戶使用的。需要相當的JS編程經驗。
UI-Element允許我們使用json來匹配UI元素。
??? ? ? ? ? ??
? ?點擊鏈接加入群【悅分享測試聯盟】:https://jq.qq.com/?_wv=1027&k=5DiePik
轉載于:https://blog.51cto.com/shareku/2065042
總結
以上是生活随笔為你收集整理的Selenium IDE工具界面剖析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Arcgis API for JavaS
- 下一篇: 通过安装scl软件集,使用高版本gcc的