您的位置:軟件測(cè)試 > 開(kāi)源軟件測(cè)試 > 開(kāi)源功能測(cè)試工具 > Selenium
Selenium及RFT進(jìn)行自動(dòng)化的全球化測(cè)試
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/4/2 15:33:59 ] 推薦標(biāo)簽:

  工作原理 2: 在腳本模式下,RFT 通過(guò)其核心方法 .find 定位所有 UI 為對(duì)象,同樣通過(guò) Mapping Proxy objects 建立起定義對(duì)象到界面 UI 之間的對(duì)應(yīng)關(guān)系,從而控制對(duì)象執(zhí)行相應(yīng)的操作。對(duì)于任何一個(gè)對(duì)象而言,他都屬于一個(gè)樹(shù)形結(jié)構(gòu)的一部,find 方法,可以從某一個(gè)節(jié)點(diǎn)開(kāi)始,定位其所有子類(lèi),或者只在子結(jié)點(diǎn)搜索。與錄制方式中的靜態(tài)樹(shù)相比,這種方式其實(shí)是構(gòu)建了一個(gè)虛擬的樹(shù),find 的方法只是在其中進(jìn)行搜索而已,他不能對(duì)本身的結(jié)構(gòu)產(chǎn)生影響,也不會(huì)添加某個(gè)結(jié)點(diǎn),這點(diǎn)是很重要的。

  對(duì)于 GVT 的自動(dòng)化測(cè)試領(lǐng)域,需要特殊說(shuō)明的是,我們的腳本由于是用來(lái)做 GVT 測(cè)試,現(xiàn)在很多產(chǎn)品都是 Agile 模式,所以翻譯很早可能會(huì)進(jìn)來(lái),某些測(cè)試點(diǎn)需要不同的在不同的 locale 下才能測(cè)試,我們不拒絕在找對(duì)象屬性的時(shí)候選擇一些與翻譯無(wú)關(guān)的 locale,但是在沒(méi)有這種屬性的時(shí)候,我們也會(huì)用 PII 中的翻譯來(lái)做。

  回頁(yè)首R(shí)FT 和 Selenium 的集成開(kāi)發(fā)環(huán)境

  前文已介紹,由于 Selenium RC 需要 Java 作為它的開(kāi)發(fā)環(huán)境。而 RFT 正好為 Selenium 提供一個(gè)較好的 Java 的開(kāi)發(fā)平臺(tái)。只需將 selenium-server 的 jar 包及 selenium-language-client-driver 的 jar 包導(dǎo)入 RFT 中即可對(duì) Selenium 進(jìn)行應(yīng)用。Selenium 支持多種編程語(yǔ)言,它也提供了 .net,java,perl,php,python,ruby 等編程語(yǔ)言的 jar 包,使開(kāi)發(fā)人員可以根據(jù)自己的需要選擇相應(yīng)的 jar 包。圖 4 給出了 Selenium RC 的文件夾結(jié)構(gòu)。

  圖 4. Selenium RC 的文件夾結(jié)構(gòu)

  例如我們以 java 編程語(yǔ)言為例,圖 5 給出了將 selenium-server 及 selenium-java-client-driver 的 jar 包導(dǎo)入 RFT 中的示意圖。從圖中可以看到 selenium-server 和 selenium-java-client-driver 這兩個(gè) jar 包在 RFT 中的 libraries 中得以顯示。

  圖 5. selenium-server 及 selenium-java-client-driver 的 jar 包導(dǎo)入 RFT 中的示意圖

  將這兩個(gè) jar 包導(dǎo)入后,自動(dòng)化開(kāi)發(fā)人員可以順利地實(shí)現(xiàn) RFT 與 Selenium 結(jié)合使用,進(jìn)行編寫(xiě)各種自動(dòng)化腳本了。

  下面本文簡(jiǎn)要地介紹 Selenium Server 的啟動(dòng)方法。啟動(dòng) Selenium-Server,可以在命令行中使用 java -jar 命令直接運(yùn)行可執(zhí)行 jar 包(對(duì)于中文 Windows 操作系統(tǒng)且使用 IBM JDK,還需要加參數(shù) -Dibm.stream.nio=true)。

  它的命令格式:java – jar selenium-server-standalone-X.X.jar。圖 6 給出了 Selenium server 啟動(dòng)成功后的信息。

  圖 6. Selenium server 啟動(dòng)成功后的信息

  RFT 和 Selenium 的對(duì)于 GVT 驗(yàn)證點(diǎn)的測(cè)試

  RFT 和 Selenium 的結(jié)合使用可以是自動(dòng)化開(kāi)發(fā)人員方便地調(diào)用 GVT 的驗(yàn)證方法,到目前為止我們已經(jīng)開(kāi)發(fā)了很多 GVT 的自動(dòng)化驗(yàn)證方法。例如對(duì)于語(yǔ)言字符串的輸入及驗(yàn)證,時(shí)間日期格式的驗(yàn)證,路徑的驗(yàn)證,及在不同語(yǔ)言環(huán)境下排序的驗(yàn)證等等。下面將具體介紹一下各個(gè)方法的實(shí)現(xiàn)機(jī)制及使用。

  在自動(dòng)化測(cè)試中涉及的 GVT 驗(yàn)證,我們是以 GVT Guide 為導(dǎo)向,ICU 為核心庫(kù),來(lái)實(shí)現(xiàn)一系列 GVT 驗(yàn)證方法的。

  Date Time

  針對(duì)我們?cè)?GVT 中的時(shí)間日期格式,我們把日期時(shí)間格式的產(chǎn)生,格式化以及格式驗(yàn)證都?xì)w于 Date Time 一類(lèi),主要的實(shí)現(xiàn)方法包括:

  ( 日期時(shí)間格式都對(duì)應(yīng) 4 種 style,分別是 FULL, SHORT, MEDIUM, LONG)

  public static String getDateByLocal(Date date,int style, ULocale ulocale)

  把一個(gè)英文的日期格式轉(zhuǎn)換為對(duì)應(yīng) locale 下的日期格式 , 這里主要是用來(lái)做可接受數(shù)據(jù)的測(cè)試。

  public static boolean isValidDate(String date,int style, ULocale ulocale)

  判斷一個(gè)日期串是否符合對(duì)應(yīng) locale 下某種 style 的格式,這里主要是用來(lái)做輸出標(biāo)準(zhǔn)的測(cè)試。時(shí)間與日期的方法類(lèi)似,不列舉說(shuō)明了。

  Data Sort

  對(duì)于字符串的排序,測(cè)試數(shù)據(jù)顯得相當(dāng)重要,如果測(cè)試數(shù)據(jù)選得不夠準(zhǔn)確以及特別,那么即使本身存在問(wèn)題的地方,也有可能發(fā)現(xiàn)不出來(lái)。我們的主要的實(shí)現(xiàn)方法包括:

  public static String[] createStrings(int n,ULocale ulocale)

  產(chǎn)生在某個(gè) locale 下長(zhǎng)度為 n 的測(cè)試數(shù)據(jù)數(shù)組。

  public static String[] sortedStrings(ULocale ulocale, String [] UnSortedString,int order)

  order 表示排序規(guī)則是降序還是升序,整個(gè)方法為在某個(gè) locale 下,對(duì)未排序的一組數(shù)組進(jìn)行降序或者升序排列,返回值為排序好的數(shù)組。

  Number

  GVT 中對(duì)數(shù)字的處理主要有千分位格式化和貨幣格式化,我們的主要的實(shí)現(xiàn)方法包括:

  public static String formatNumber(String num,ULocale locale)

  public static String formatCurrency(String num,ULocale locale)

  把一個(gè)數(shù)字字符串格式化成對(duì)應(yīng) locale 下的千分位和貨幣格式,用來(lái)做可接受數(shù)據(jù)的測(cè)試。

  public static boolean verifyNumber(String num,ULocale locale)

  public static boolean verifyCurrency(String num,ULocale locale)

  驗(yàn)證一個(gè)數(shù)字字符串是否符合當(dāng)前 locale 下的千分位和貨幣格式,這樣編寫(xiě)的目的是用來(lái)做輸出標(biāo)準(zhǔn)的測(cè)試。

  OS File

  在 GVT 中,關(guān)于文件系統(tǒng)的測(cè)試主要是對(duì)于某些系統(tǒng)特殊的分隔符的測(cè)試以及文件路徑和文件名中包含某些高風(fēng)險(xiǎn)字符的測(cè)試,由于系統(tǒng)特殊分隔符屬于操作系統(tǒng)級(jí)別,且我們?cè)诓煌到y(tǒng)編譯時(shí)能獲取到當(dāng)前的文件分隔符,所以我們這里主要針對(duì)后面兩種情況的進(jìn)行討論。主要的實(shí)現(xiàn)方法有:

上一頁(yè)12345下一頁(yè)
軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠(chéng)聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd