資源推薦:
創(chuàng)新互聯(lián)建站專注骨干網(wǎng)絡(luò)服務(wù)器租用十多年,服務(wù)更有保障!服務(wù)器租用,成都服務(wù)器托管 成都服務(wù)器租用,成都服務(wù)器托管,骨干網(wǎng)絡(luò)帶寬,享受低延遲,高速訪問。靈活、實現(xiàn)低成本的共享或公網(wǎng)數(shù)據(jù)中心高速帶寬的專屬高性能服務(wù)器。社區(qū)資源:自動化測試交流群
Selenium IDE簡介
Selenium IDE(Integrated Development Environment),是Selenium工具套件中最簡單的工具,它可以快速的通過錄制回放功能創(chuàng)建測試腳本,這種特性類似于QTP,而且它的安裝和使用都非常的簡單。
由于Selenium IDE功能簡單,適用范圍局限,很多情況下都被當做原型工具使用,而不會用作開發(fā)和維護復(fù)雜測試場景的解決方案。
雖然學習Selenium IDE不需要什么其他知識基礎(chǔ),但是至少你需要熟悉HTML,Javascript,和DOM(Document Object Model),通過這些知識可以更多的發(fā)揮該工具(Selenium IDE)的潛能。比如當我們進入關(guān)于Selenese命令“runScript”階段學習時,就需要使用到j(luò)avascript知識。
當使用Selenium IDE創(chuàng)建測試腳本時,Selenium IDE支持命令自動完成模式,這個特性主要是為了兩個目的:
幫助測試人員更快的完成命令輸入
限制用戶輸入無效的Selenese命令
Selenium IDE特性
菜單欄
菜單欄位于IDE的最頂部,最常用的菜單包括:File,Edit和Options菜單。
文件菜單
文件菜單包含創(chuàng)建,打開,保存,關(guān)閉測試相關(guān)選項
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相關(guān)配置。
我們先看下Options和 “Clipboard Format”選項:
Clipboard Format選項允許從IDE命令行編輯器復(fù)制命令并粘貼成為指定的代碼片段
粘貼成為目標代碼片段格式取決于在此所選擇的格式
HTML是默認格式
比如,當你選擇的代碼格式為“Java/JUnit 4/WebDriver”時,每個從Selenium IDE中復(fù)制的命令行會被粘貼成為java code.
Selenium IDE Options對話框
在菜單欄上點擊“Options > Options...”啟動Options對話框,Options中包含很多配置信息,我們將會選擇比較重要的進行解釋。
Default Timeout Value.這個時間指的是等待某個元素在頁面中出現(xiàn) 或 等待某元素變?yōu)榭稍L問狀態(tài)的等待時間,超時后會拋出相應(yīng)的錯誤信息,這里默認超時時間是30000ms
Selenium IDE extensions.在這里可以對Selenium IDE特性進行擴展,可以通過訪問“http://addons.mozilla.org/en-US/firefox/”,并使用關(guān)鍵字“Selenium”搜索相關(guān)可用的擴展。
Remember base URL. 在此可以設(shè)置使Selenium IDE每次啟動時記住上次使用的Base Url,如果反選這個選項的話,IDE每次啟動時,將會保持Base Url空白。
Autostart record. 選擇該選項,每次重啟Selenium IDE時,都會默認開啟錄制狀態(tài)。
Locator builders. 在這里可以指定錄制腳本時使用locators的順序,locators就是元素定位選擇器,在如下配置的情況下,當你點擊一個帶有ID的元素時,IDE會優(yōu)先使用id locator作為定位元素的選擇器,如果目標元素不存在ID時,Selenium會尋找name屬性作為第二選擇,依次類推直到找到可用的元素定位選擇器。
Base URL 欄
Base URL有一個下拉菜單列表,它會記錄所有先前訪問的歷史。
通過Selenese命令“open”,可以將瀏覽器導航到指定的url所指頁面。
在本教程中我們會使用“http://newtours.demoaut.com”作為Base URL,這是HP為用于基于測試目的維護的web系統(tǒng),這個web系統(tǒng)中包含所有本教程需要使用到的頁面元素。
使用Base URL時,對于訪問基于相對路徑的頁面時非常有用,比如這里指定Base URL的值為“http://newtours.demoaut.com”,可以使用Selenese “open”命令,并指定Target值為“sign-up”,Selenium IDE將會直接將瀏覽器導航到“sign-up”頁面,如下:
通過這個控件控制腳本回放速度 | |
開始/結(jié)束錄制會話,開啟后會將與瀏覽器的所有操作錄制成Selenese命令,并寫入到Editor面板中。 | |
執(zhí)行整個測試套件,將會順序的執(zhí)行測試面板中所有的測試案例。 | |
執(zhí)行當前測試案例,僅會執(zhí)行當前測試面板中被選中的測試腳本。 | |
暫停/恢復(fù)當前正在回放的測試腳本。 | |
單步調(diào)試,可以逐步執(zhí)行測試腳本的命令,用于調(diào)試使用。 | |
應(yīng)用匯總策略,通過rollup關(guān)鍵字將多個命令合并為一個,需要用戶自定義擴展。 |
測試用例面板
同一時刻,可以在測試面板中打開多個測試腳本。
當打開的目標是一個test suite時,測試面板會加載當前測試套件下所有測試腳本列表。
測試用例名稱標注加粗字樣的為當前選中的測試腳本。
回放之后,每個測試腳本名稱會有字體背景著色,表示執(zhí)行成功或失敗,綠色表示“成功”,紅色表示“失敗”。
測試用例面板底部顯示的是運行測試的總數(shù)及失敗的個數(shù)。
Editor
Editor中包含兩個視圖窗口:Table View 和 Source View.
Table
Table視圖在大多數(shù)情況下是使用最頻繁的。
可以在這里創(chuàng)建和修改Selenese命令。
腳本回放之后,每個執(zhí)行步驟都會被著色。
創(chuàng)建測試步驟,可以在“Command”文本框中輸入命令名稱
在鍵入命令時,文本框下拉列表會顯示所有可以匹配到的命令集合。
Target參數(shù)通常是一個元素定位器,或者作為參數(shù)值等,而Value通常會是參數(shù)變量名,輸入數(shù)據(jù)等。
Source 視圖
source視圖通過HTML格式展示測試步驟。
可以在此視圖中創(chuàng)建、編輯Selenese命令。
Log 面板
log面板會實時顯示測試執(zhí)行消息,實時更新日志并通知Selenium正在做的事情。
Logs被歸類為4中類別
Debug - 默認情況下,debug消息不會被顯示,這些debug信息主要是涉及到Selenium運行時使用到的技術(shù)相關(guān)信息,比如,加載了一個特定的模塊,一個特定的函數(shù)被調(diào)用過,加載了一個外部js文件等等。
Info - info消息會告訴使用者Selenium IDE都執(zhí)行了哪些Selenese命令。
Warn - 某些特殊情況下,使用Selenese不當或環(huán)境等某種原因,會提示W(wǎng)arn消息。
Error - 當Selenese命令執(zhí)行失敗時,會有error消息,比如不滿足“verify”or "assert" 相關(guān)命令的條件時,也會有Error消息產(chǎn)生。
Log信息可以通過類型進行過濾,比如選擇“Error”選項時,log面板中只會顯示error相關(guān)的信息。
Reference 窗口(灰常有用)
Reference窗口中顯示了當前選中的Selenese命令相關(guān)介紹,同時也對當前command的locator和value進行描述。
UI-Element窗口
UI-Element對于selenium用戶來說,相比較而言是較高級的話題,它使用JSON(Javascript Object Notation)來定義頁面、頁面元素的映射結(jié)構(gòu),我們可以在Selenium IDE中“Help”選項下找到“UI Element Documentation”,這里包含UI-Element更多詳細的內(nèi)容。
如下是一個使用UI-Element的一個例子。
Rollup窗口
Rollup允許將一組Selenese命令合并到一個步驟中,一組selenese命令稱為“rollup”,它嚴重的依賴于javascrip及“UI-Element”概念,類似于編程語言中的function。
Rollup是可以重用的,一個“rollup”可以在測試腳本中多次使用,由于“rollup”是一系列命令的集合,所以它可以縮減測試腳本篇幅。
如下展示了“rollup”窗口內(nèi)容
匯總
Selenium IDE是整個套件里最簡單的。
僅僅被用作一個原型工具
需要JS和HTML的知識。Rollup是一些可重用的命令集合。Locators是你告訴IDE怎么找到元素的描述。
Firebug是獲取locator值的工具。
菜單欄用來創(chuàng)建,修改,導出RC,WebDriver可以識別的格式的測試用例。
Selense命令的默認格式是HTML。
選項菜單提供了關(guān)于IDE更多配置。
Base URL基址在訪問相對地址比較有用。
測試用例面板顯示打開的case和關(guān)于測試結(jié)果的匯總。
Editor編輯器提供了修改腳本的入口
表格試圖以表格形式等你鍵入Command,target,value。而代碼視圖用HTML來顯示你的腳本。
日志和參考頁面提供了一些執(zhí)行case可能需要的信息。
UI-Element和Rollup是給比較熟悉Selenium工具的用戶使用的。需要相當?shù)腏S編程經(jīng)驗。
UI-Element允許我們使用json來匹配UI元素。
點擊鏈接加入群【悅分享測試聯(lián)盟】:https://jq.qq.com/?_wv=1027&k=5DiePik
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。