91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

面向Web的自動化測試工具Watij怎么用

發布時間:2021-11-17 16:18:33 來源:億速云 閱讀:142 作者:柒染 欄目:web開發

面向Web的自動化測試工具Watij怎么用,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

隨著軟件產業的不斷成熟,軟件質量保證越來越受軟件企業重視,被視為軟件企業的生命。軟件測試作為軟件質量保證中的一個重要手段,它直接關系到軟件的質量、開發周期和開發成本,受到越來越大的重視,被貫穿在軟件的整個開發和維護的生命周期。作為軟件測試的一個重要分支,軟件自動化測試正以其自動化程度高、實用性強、測試效率高等不可取代的優點,引起了測試技術人員的廣泛關注,成為軟件測試的方向。層出不窮的軟件自動化測試技術及軟件自動化測試框架正在被人們廣泛的開發和利用,在軟件測試自動化中發揮著突出的作用。而選取何種自動化測試的方案也隨之產生,測試人員更加需要一個功能強大且簡單易用的自動化測試工具,輔助測試人員搭建測試框架,設計自動測試程序,而又盡可能減少自動化測試程序的開發和維護成本。本文所要介紹的 Watij(Web Application Testing in Java)是一個優秀的開源工具,用于開發基于 Web 應用的自動化測試程序。它使用 Java 語言,提供了輕量級的自動化測試程序框架和豐富的程序開發庫,有效地加速了自動化測試程序開發。

首先簡要地介紹了 Watij 的一些主要功能及特點,其次介紹了 Watij 的安裝及配置流程。

Watij 的簡介

隨著 Web 產品的廣泛應用,新的模式解決方案中以 Web 為核心的應用也越來越多,很多公司的架構都采取 B/S 模式,以及對于 Web 的應用,所以對 Web 產品的測試就顯得越來越重要,如何對 Web 產品進行自動化測試成為當今社會研究的熱點問題之一。

Web 的測試方法應盡量涵蓋 Web 程序的各個方面,測試技術方面也應在繼承傳統測試的基礎上結合 Web 產品的應用特點。本文介紹了一種新的基于 Web 的自動化測試工具 - Watij。Watij 是 Web Application Testing in Java 的縮寫。Watij 是一個使用 Java 編程語言實現的開源自動化測試框架,它相比于其他的自動化測試框架,具有小巧,靈活等特點。Watij 也提供了強大的功能,可以滿足自動化測試人員的各個方面的需要。

運用 Watij 的自動化測試框架可以使自動化開發人員利用 Java 編程語言對產品進行自動化測試腳本的開發。Watij 擁有較為便捷的開發模式,Watij 提供了豐富的開發庫,封裝了包括瀏覽器窗口 windows,button,link,,dialog,image,table,div 等絕大多數 HTML 對象類型,方便測試人員快速構建自動化測試程序。 同時,它提供了大量的應用方法以及應用接口,這些應用接口函數幾乎包括了所有對于網頁操作的方法。開發人員可以調用這些方法方便地對其進行使用。另外,Watij 具有高效、快速等特點,開發人員只需要運用提供的方法編寫測試腳本并執行改腳本,在測試運行過程中就如同真實的用戶在操作一樣,使自動化測試工作幾乎模擬人的手工測試一樣。應用基于 Watij 的自動化測試框架能夠使自動化腳本的開發變得更為簡單而且更具有實用性。

Watij 的安裝及配置

為了能夠更為詳實的說明 Watij 自動化測試框架,下面將要介紹 Watij 的安裝及配置過程,使開發人員能夠更為快捷便利地使用 Watij 這套自動化測試框架進行自動化的測試工作。

◆ 軟件安裝包,并進行解壓。

◆ Watij_release_3.2.1 的下載地址:http://sourceforge.net/projects/Watij/files/

◆ 將文件中的 jniwrap.dll 拷到 C:\windows\system32\ 目錄下。

◆ 打開一個 Java IDE(如 Eclipse), 并創建一個新的工程。

◆ 將 Watij.jar 以及 lib 目錄下的所有 jar 包都加載到工程的 classpath 中,如圖 1 所示。

添加jar 包的具體操作步驟如下:

依次打開 New->Project,選擇“Java Project”,點擊“Next”;

“Project Name”中輸入“Watij”,點擊“Next”;

在“Java Settings”中選擇“Libraries”的選項,點擊“Add External JARs”;

添加“Watij.jar”和 lib 目錄下的所有 jar,點擊“Finish”。

創建 JUnit TestCase,并確保包含這句話“import static Watij.finders.SymbolFactory.\*;”

圖 1. 導入 jar 包示意圖

面向Web的自動化測試工具Watij怎么用

首先本節介紹了 Watij 的應用方法,然后通過一個具體的應用實例來介紹 Watij 的使用。由于 Watij 目前只對 IE 瀏覽器有較好的支持,故以下涉及的內容都是以 Windows 平臺為例,此外,RFT(Rational Functional Tester)是一款先進的、自動化的功能和回歸測試工具,它適用于測試人員和 GUI 開發人員,故本文采用 RFT 作為 Watij 的 Java IDE 進行描述的;而后文章簡單地介紹 Watij BeanShell 的使用方法;***本節對 Watij 和 Selenium 這兩個目前較為流行地自動化測試框架進行簡要的比較與說明,說明了兩者的區別與聯系,以及這兩者的各自的應用范圍及應用領域,說明了在何種情況下應用那款自動化測試框架才會使其發揮更大的作用。

Watij 的應用方法

首先簡要介紹 Watij 的功用。Watij 可以驅動 HTML 在瀏覽器上的 Web 應用,它不需要像 Active X、JavaApplets、Macromedia Flash 等類似的插件服務一樣。

在基于 Web 的自動化測試中,如何獲取網頁對象屬性是開發 GUI 自動化測試程序的關鍵步驟。由于 Watij 本身沒有提供類似于 RFT 中 Object Capture 的對象捕捉器,但在 Watij 程序的開發中,我們可以使用一些第三方提供的運行在瀏覽器端的 HTML 查看器,進行網頁對象的獲取,以便查看網頁的結構和對象的屬性,這樣將使我們的開發工作變得更為方便。對于 IE 瀏覽器,可安裝 Microsoft IE Explorer Develop Toolbar,如果用戶使用的 IE 瀏覽器的版本在 8.0 以上,也可以通過點擊 F12,選擇開發人員工具,也可以達到查看某個對象屬性的目的。

在使用 Watij 進行編寫自動化腳本的時候,開發人員需要使用類似于 XPath 這樣的編程語言去查看或者定位要使用的對象屬性。XPath 是一門在 XML 文檔中查找信息的語言。它用于在 XML 文檔中通過元素和屬性進行導航。這樣開發人員才可以有效地進行自動化腳本的開發與應用。

Watij 的應用實例

1. 將工程建立完成后,需要新建一個“Jnit Test Case”(如圖 2 所示),例如輸入“Name”為“TestWatijIBM”(圖 3),點擊“Finish”。就可以建立一個新的腳本,就可以進行編寫程序,進行自動化測試的工作了。

圖 2. 新建“Junit Test Case”

面向Web的自動化測試工具Watij怎么用

圖 3. New Junit Test Case 界面

面向Web的自動化測試工具Watij怎么用

2. 下面我們以“IBM”為關鍵字進行百度搜索的操作做為實例進行介紹。

清單 1. 以“IBM”為關鍵字進行百度搜索

import static watij.finders.SymbolFactory.name;    import junit.framework.TestCase;    import watij.runtime.ie.IE;     public class TestWatijIBM extends TestCase {    public void testgooglesearch() throws Exception{    IE ie = new IE();    // 打開 IE 瀏覽器   ie.start();    // 轉到百度主頁   ie.goTo("www.baidu.com");    // 在輸入框內輸入“IBM”   ie.textField(name,"wd").set("IBM");    // 點擊“百度一下”進行查找   ie.button("百度一下").click();    // 等待 3 秒   ie.wait(3);    }    }

3. 運行:輸入以上代碼并保存后,選擇“Run as”->“JUnit Test”,如圖 4 所示。

圖 4. 運行代碼

面向Web的自動化測試工具Watij怎么用

4. 執行結果:如果執行過程沒有報錯時,JUnit 執行狀態顯示為綠色(如圖 5 所示),并且能夠打開百度的主搜索界面,對“IBM”為關鍵字的網頁進行檢索(如圖 6 所示)。

圖 5. 運行結果圖

面向Web的自動化測試工具Watij怎么用

圖 6. 運行 Baidu 界面檢索圖

面向Web的自動化測試工具Watij怎么用

5. 具體代碼解釋

IE ie = new IE(); IE 對象實例化

ie.start(); 啟動 IE 瀏覽器

ie.goTo("www.ibm.com"); 轉到 www.baidu.com 主頁

ie.textField(name,"wd").set("IBM"); 在輸入框中輸入查找內容:“IBM”

ie.button("百度一下").click(); 利用 click 函數點擊“百度一下”這個 Button

此外,Watij 提供了多種常見的 Web 對象的識別與操作的支持,例如:窗口的控制(***化及最小化操作),超鏈接的點擊,多選框的選擇,CheckBox 的選中與清除,RadioBox 的選中與清除,下拉框和列表框的選擇,文本框的輸入,圖片及各種表格的插入與刪除,各種按鈕的點擊,Frame 的訪問以及彈出窗口的控制等。

Watij BeanShell 的介紹

Watij 提供了 BeanShell 的開發工具,方便了開發人員編寫腳本進行自動化的測試或對腳本進行各種調試的工作。

操作步驟如下所以:

雙擊 launchWatijBeanShell.bat 或用命令行執行,進入 BeanShell 的操作界面;

圖 7 為用命令行執行 launchWatijBeanShell.bat 命令。

圖 8 為 BeanShell 的操作界面,BeanShell 提供的操作界面具有操作方便、簡單等優點。

圖 7. 命令行執行 launchWatijBeanShell.bat

面向Web的自動化測試工具Watij怎么用

圖 8. BeanShell 操作界面

面向Web的自動化測試工具Watij怎么用

在 bsh Workspace 中輸入腳本腳本語言進行相關的測試工作。

圖 9. 利用 BeanShell 執行 Baidu 搜索操作

面向Web的自動化測試工具Watij怎么用

需要說明的是 BeanShell 的是逐步執行的,即每一步 bsh 都需要去執行,方便開發人員對代碼進行相關的 debug 操作,使開發人員能夠方便地調試程序。BeanShell 也提供了相應的字體設置功能,開發人員可以根據自己的需要進行相應的字體設置。

Watij 與 Selenium 的比較

下面本文將介紹 Watij 和 Selenium 的異同。Watij 和 Selenium 都是可用于網頁自動化測試的開源工具,兩者都具有各自的特點及優勢,它們之間有何異同,到底要如何取舍?首先,Watij 和 Selenium 都是直接在瀏覽器中運行腳本,并允許在腳本運行時將瀏覽器最小化,這意味著不需要因為自動化測試而占用一臺機器的資源。其次,兩者都需要運用 XPath 去編寫腳本,所以要求使用者必備 XPath 的基本知識。但是,它們在編寫腳本是有一些地方是有區別的,下面本文將執行相同功能的代碼比較進行簡單說明。

清單 2 是用 Watij 執行網頁登陸操作的代碼:

清單 2. 執行登陸網頁操作的代碼清單

import junit.framework.TestCase;    import static watij.finders.SymbolFactory.name;    import watij.runtime.ie.IE;     public class TestConcord extends TestCase {    public void testconcordfunction() throws Exception{    IE ie = new IE();    // 打開 IE 瀏覽器   ie.start();    // 轉到 concord77    ie.goTo("http://concord77.cn.ibm.com/files/app?lang=en_US#/pinnedfiles");    // 窗口***化   ie.maximize();    // 安全認證   ie.link(name, "overridelink").click();    // 在輸入框內輸入用戶名和密碼   ie.textField(name,"j_username").set("Abdul_000_006");    ie.textField(name, "j_password").set("passw0rd");    // 點擊登陸   ie.button("登錄").click();    // 保存結果圖   ie.screenCapture(“D:\\Savelogin.png”);    }    }

由于本文主要介紹 Watij 的自動化測試框架,故不涉及完整的 Selenium 的執行代碼。如果用 Selenium 腳本語言編寫上述功能,***的不同在于 Selenium 必須用完整的 XPath 語句輸入才可以編寫執行。

例如:

Watij 腳本語言執行點擊某個 link: ie.link(name, "overridelink").click();

Selenium 腳本語言執行點擊某個 link: Selenium.click("//a[@name='overridelink']");

相比這下 Watij 的代碼會顯得更為清晰、靈活,易于理解。

此外相比于 Selenium,Watij 具有更快的執行速度。因為 Watij 是直接調用 .dll 的文件,不用多加一個容器去加載,而需要啟動一個 jetty 容器。故 Watij 比 Selenium 調用過程更為直接,所以運行速度要超過 Selenium。此外,Selenium 對彈出窗口、上傳、下載等功能支持的并不好,常常需要借助第三方工具包,如 AutoIt3,Watij 在這方面的處理上要好于 Selenium;另外,Watij 提供了截圖的方法,這是 Selenium 目前所不具備的。但是,Watij 目前只對 IE 瀏覽器有較好的支持,這正是 Selenium 的優勢所在,Selenium 可以支持多瀏覽器,如 IE,Firefox, Safari 等等,另外,Selenium 提供了錄制和回放腳本的功能,并可以將錄制好的腳本轉換成各種主流編程語言,Watij 則未提供此功能。

所以,當測試人員測試的產品是基于 IE 瀏覽器的,Watij 顯然更具優勢,但當測試人員測試的產品是基于多瀏覽器的,或者需要測試瀏覽器之間的兼容性,顯然 Selenium 會成為更好的選擇。

Watij 的特點及優勢

Watij 提供了一套基于 Watir 的純 Java API 用于 Web 應用程序自動測試。Watij 通過一個真實的瀏覽器來實現自動化測試。

Web 自動化測試大致采用兩種方法實現:***種方法是協議測試,這種方法是建立在 HTTP 協議上的測試,通過 get 或 post 等方式向服務器發送請求,然后對從服務器返回的結果數據進行解析、驗證等操作;第二種方法是基于瀏覽器端的測試,這種測試是通過啟動真實瀏覽器環境并自動執行瀏覽器端的相關操作(如點擊按鈕、文本框的輸入及選擇列表框等 )進行測試。Watij 作為 sourceforge 上一個純 Java API 的 Web 自動化測試工具,它以第二種測試方法為原理進行工作,它是完全開源免費的軟件包,并且在網頁元素定位和跨平臺部署等方面有著出色的表現。

Watij 自動化測試框架還有如下優勢:

◆ 它像是模仿真實的用戶對網頁進行操作的,而且具有較快的運行速度。

◆ Watij 對網頁進行操作時是得到網頁的原始數據,這樣就可以更為準確地,客觀地進行自動化腳本的開發及驗證工作。

◆ Watij 可結合任何的 Java IDE 進行使用,它們的配置過程非常簡單,免去了開發人員由于配置環境的問題而浪費大量的時間和精力。

◆ Watij 相比于其他的基于 Web 的自動化測試工具有很好的執行結果,提高了開發人員的工作效率。

◆ Watij 提供了很好的 Debug 工具,為開發人員進行調試工作提供了方便。

◆ Watij 程序在運行時,允許測試人員在該測試機器上訪問其他網頁或者進行其他操作而不會影響到對象識別的結果。

關于面向Web的自動化測試工具Watij怎么用問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

web
AI

青铜峡市| 即墨市| 雷山县| 广州市| 琼结县| 从江县| 泸定县| 白水县| 德格县| 集贤县| 仙桃市| 清镇市| 盘锦市| 逊克县| 霍林郭勒市| 保德县| 苍梧县| 公主岭市| 德令哈市| 哈尔滨市| 乐昌市| 青海省| 榆社县| 梅河口市| 隆昌县| 巧家县| 喀喇| 苏尼特右旗| 岳阳市| 阳曲县| 龙江县| 邢台市| 呼伦贝尔市| 稷山县| 玉屏| 凤庆县| 澄江县| 临泉县| 铁力市| 赤城县| 曲周县|