亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源功能測試工具 > Selenium
使用分層的Selenium框架進行復雜 Web 應用的自動測試
作者:網絡轉載 發布時間:[ 2014/12/8 16:34:22 ] 推薦標簽:Selenium 開源測試工具

  Selenium概述
  Selenium是一種Web應用的自動測試工具,通過模擬用戶對Web頁面的各種操作,可以精確重現軟件測試人員編寫的Test Cases步驟。Selenium包含三個工具:Selenium-IDE,Selenium-RC以及Selenium-Core。其中,Selenium-Core是驅動Selenium工作的核心部分,作為一個用JavaScript編寫的測試引擎,它可以操作Web頁面上的各種元素,諸如:點擊按鈕、輸入文本框,以及斷言Web頁面上存在某些文本與Web元素等。
  Selenium-IDE是一個Firefox插件,能夠錄制回放用戶在Firefox中的行為,并把所記錄的Selenese(Selenium Commands)轉化為Java/C#/Python/Ruby等語言,在Selenium-RC中修改復用。對于較為復雜的Test Cases,Selenium-IDE的功能有限,往往用它錄制大致的步驟,再轉化為測試人員熟悉的編程語言,在此基礎上完善,形成更為強大且靈活的Selenium-RC Test Cases。
  Selenium-RC(Selenium Remote Control)在Web瀏覽器與需要測試的Web應用間架設代理服務器(Selenium Server),使得JavaScript引擎與被測Web應用同源,繞開同源策略的限制(Same Origin Policy),進而取得對Web頁面進行各種操作的權限。
  開發環境配置
  以Java作為測試用語言為例,在Eclipse中新建一個Java項目Test Search Engine,下載Selenium-RC軟件包,把selenium server/selenium java client driver的Jar以及JUnit庫加入到該項目的Java Build Path。

  圖1.Build Path配置

  啟動Selenium-Server,可以在命令行中使用java-jar命令直接運行可執行Jar包(對于中文Windows操作系統且使用IBM JDK,還需要加參數-Dibm.stream.nio=true)。如果想在Java程序中啟動/停止Selenium-Server,首先,新建一個RemoteControlConfiguration對象rcc,并指定遠程控制參數(包括配置Selenium Server的監聽端口,Firefox瀏覽器的Profile等),然后新建一個SeleniumServer對象,把rcc傳入SeleniumServer的構造函數(對于中文Windows操作系統且使用IBM JDK,在Eclipse的Run Configurations的VM arguments中加入-Dibm.stream.nio=true)。
  清單1.使用Java啟動/停止Selenium Server
  RemoteControlConfiguration rcc=new RemoteControlConfiguration();
  rcc.setPort(4444);//指定Selenium Server開放端口
  SeleniumServer SELENIUM_SERVER;
  SELENIUM_SERVER=new SeleniumServer(rcc);
  SELENIUM_SERVER.start();//啟動server
  //測試代碼
  SELENIUM_SERVER.stop();//停止server
  此外,Selenium Server還可以通過Ant腳本來控制啟動/停止,這提供了另一種靈活而強大的項目控制方式。
  清單2.使用Ant腳本啟動/停止Selenium Server
  在Selenium-Server啟動后,建立一個Selenium類的實例selenium,并通過這個實例與Selenium-Server進行交互,方法如下。
  清單3.Selenium實例的啟動/停止
  Selenium selenium=new DefaultSelenium(java.lang.String serverHost,
  int serverPort,
  java.lang.String browserStartCommand,
  java.lang.String browserURL);
  selenium.start();
  //經由selenium控制瀏覽器模擬各種用戶操作
  selenium.stop();
  Selenium實例包含豐富接口,可以對各種Web元素進行各種操作。例如,在谷歌頁面中輸入“developerWorks”,點擊搜索按鈕,在結果頁面中驗證是否包含“developerWorks中國”字樣等。
  清單4.Selenium測試的簡單示例
  Selenium selenium=new DefaultSelenium("localhost",4444,"*firefox",
  "http://www.google.cn");
  selenium.start();//啟動瀏覽器
  selenium.open("/");//打開www.google
  selenium.type("q","developerworks");//輸入文本框
  selenium.click("btnG");//點擊搜索按鈕
  selenium.waitForPageToLoad("30000");//等待加載結果頁面
  verifyTrue(selenium.isTextPresent("developerWorks中國"));//驗證是否存在指定字符
  selenium.stop();//關閉瀏覽器
  當Selenim遇到TestNG
  用Selenium測試Web頁面時,所重現的各種行為依賴于測試人員的輸入參數,例如:選擇下拉餐單的項目,在文本框中輸入字符等。不同的測試用例對應不同的輸入,若有方法能夠簡單有效的傳入測試用參數,會大大提高測試用例的復用性和可維護性。當Selenium遇到TestNG,這些可以實現。TestNG中的NG,意為Next Generation,事實上,該測試框架引入了不少新特性:靈活的測試配置,支持JDK 5注釋,支持數據驅動的測試,強大的執行模型等。

上一頁1234下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 亚洲欧美视频一区二区三区 | 欧美日韩一区二区三区在线观看 | 亚洲欧美日韩天堂在线观看 | 亚洲国产女人aaa毛片在线 | 亚洲免费视频在线 | 亚洲人成网国产最新在线 | 日本不卡视频一区二区三区 | 久久本道综合色狠狠五月 | 九九精品视频在线播放 | 精品欧美一区二区在线看片 | 欧美激情精品久久久久久不卡 | 天天操天天操天天干 | 久久精品国产99国产精偷 | 成年视频在线播放 | 欧美在线观看一区 | 久久精品伊人波多野结 | 国产123区在线视频观看 | 在线不卡一区 | 高清欧美一级在线观看 | 一级特黄特黄xxx视频 | 久草综合视频在线 | 在线成人tv天堂中文字幕 | a毛片视频| 日韩高清一区 | 欧美日韩亚洲国内综合网俺 | 日本精品影院 | 国产欧美日韩一区二区三区 | 成年人黄视频 | 国产男女猛烈无遮挡 | 久久综合精品视频 | 美国十次色 | 天天弄天天模 | 男女做爽爽视频免费观看 | 国产免费色视频 | 日日射视频 | 日韩第二页 | 精品久久久久久综合日本 | 99九九视频高清在线 | 亚洲αv | 国产精品亚洲欧美动漫卡通 | 成人免费看片视频色多多 |