當前位置:首頁 » 編程語言 » java自動化測試腳本

java自動化測試腳本

發布時間: 2023-09-06 03:03:52

⑴ 如何提高自動化測試的執行效率 selenium java

1. 環境准備
1.1 Java環境
安裝, 配置jdk
1.2 Java IDE
因為Selenium支持Java/C#/Ruby/python/Perl等,這里選擇用Java。到Eclipse官方網站下載Eclipse, 解壓
1.3 Selenium
到Selenium官方網站http://seleniumhq.org/download/下載Selenium IDE,Selenium Server, Selenium Client Driver
以上三者之間的關系是:
Selenium IDE可以錄制腳本,執行腳本,修改腳本,將錄制的腳本導出成其他語言(比如Java)---本篇不討論
Selenium Server是和Selenium Client結合使用的,Server用來啟動瀏覽器,接受Client端的請求,執行test;
Client端則是向Server端發送請求。

2. 在Eclipse中編輯並運行test
2.1 新建一個Java project: File-New-Java Project
2.2 在上一步建好的項目名稱上點滑鼠右鍵, 點擊Build Path-Add External Archives...,將下載的selenium-java-2.21.0.jar(client)和selenium-server-standalone- 2.21.0.jar(server)加進來

2.3 啟動selenium server.進入cmd,運行 "java -jar selenium-server-standalone-2.21.0.jar" --保證能找到改jar包。信息如下:

[java] view plain
信息: Launching a standalone server
22:16:21.484 INFO - Java: Sun Microsystems Inc. 17.1-b03
22:16:21.500 INFO - OS: Windows XP 5.1 x86
22:16:21.515 INFO - v2.21.0, with Core v2.21.0. Built from revision 16552
22:16:21.859 INFO - RemoteWebDriver instances should connect to: http://127.0.0.
1:4444/wd/hub
22:16:21.875 INFO - Version Jetty/5.1.x
22:16:21.875 INFO - Started HttpContext[/selenium-server/driver,/selenium-server
/driver]
22:16:21.875 INFO - Started HttpContext[/selenium-server,/selenium-server]
22:16:21.875 INFO - Started HttpContext[/,/]
22:16:22.062 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@5d173
22:16:22.062 INFO - Started HttpContext[/wd,/wd]
22:16:22.093 INFO - Started SocketListener on 0.0.0.0:4444
22:16:22.093 INFO - Started org.openqa.jetty.jetty.Server@32fb4f
[java] view plain
信息: Launching a standalone server
22:16:21.484 INFO - Java: Sun Microsystems Inc. 17.1-b03
22:16:21.500 INFO - OS: Windows XP 5.1 x86
22:16:21.515 INFO - v2.21.0, with Core v2.21.0. Built from revision 16552
22:16:21.859 INFO - RemoteWebDriver instances should connect to: http://127.0.0.
1:4444/wd/hub
22:16:21.875 INFO - Version Jetty/5.1.x
22:16:21.875 INFO - Started HttpContext[/selenium-server/driver,/selenium-server
/driver]
22:16:21.875 INFO - Started HttpContext[/selenium-server,/selenium-server]
22:16:21.875 INFO - Started HttpContext[/,/]
22:16:22.062 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@5d173
22:16:22.062 INFO - Started HttpContext[/wd,/wd]
22:16:22.093 INFO - Started SocketListener on 0.0.0.0:4444
22:16:22.093 INFO - Started org.openqa.jetty.jetty.Server@32fb4f

2.4 代碼測試

[java] view plainprint?
import com.thoughtworks.selenium.DefaultSelenium;

public class SeleniumDemo01
{
public static void main(String[] args)
{
String host = "localhost";
int port = 4444;
String url = "http://www..com/";
String browserType = "*firefox";

String keyWordsLocator = "document.getElementById('kw')";
String search = "document.getElementById('su')";
DefaultSelenium selenium = new DefaultSelenium(host,port,browserType,url);
selenium.start();
selenium.open(url);
selenium.type(keyWordsLocator,"java selenium");
selenium.click(search);
selenium.waitForPageToLoad("50000");
selenium.stop();

}
}
運行結果:
1.firefox瀏覽器期待
2.打開網路主頁
3.在搜索框中鍵入了"java selenium"
4.點擊"網路一下"按鈕
5.等等頁面載入50s
6.關閉瀏覽器

⑵ 怎麼軟體測試啊

軟體測試方法

軟體測試的基本方法
單元測試的基本方法
綜合測試的基本方法
確認測試的基本方法
系統測試的基本方法
軟體測試的基本方法

軟體測試的方法和技術是多種多樣的。
對於軟體測試技術,可以從不同的角度加以分類:

從是否需要執行被測軟體的角度,可分為靜態測試和動態測試。
從測試是否針對系統的內部結構和具體實現演算法的角度來看,可分為白盒測試和黑盒測試;

1、黑盒測試

黑盒測試也稱功能測試或數據驅動測試,它是在已知產品所應具有的功能,通過測試來檢測每個功能是否都能正常使用,在測試時,把程序看作一個不能打開的黑盆子,在完全不考慮程序內部結構和內部特性的情況下,測試者在程序介面進行測試,它只檢查程序功能是否按照需求規格說明書的規定正常使用,程序是否能適當地接收輸入數鋸而產生正確的輸出信息,並且保持外部信息(如資料庫或文件)的完整性。黑盒測試方法主要有等價類劃分、邊值分析、因果圖、錯誤推測等,主要用於軟體確認測試。 「黑盒」法著眼於程序外部結構、不考慮內部邏輯結構、針對軟體界面和軟體功能進行測試。「黑盒」法是窮舉輸入測試,只有把所有可能的輸入都作為測試情況使用,才能以這種方法查出程序中所有的錯誤。實際上測試情況有無窮多個,人們不僅要測試所有合法的輸入,而且還要對那些不合法但是可能的輸入進行測試。

2、白盒測試

白盒測試也稱結構測試或邏輯驅動測試,它是知道產品內部工作過程,可通過測試來檢測產品內部動作是否按照規格說明書的規定正常進行,按照程序內部的結構測試程序,檢驗程序中的每條通路是否都有能按預定要求正確工作,而不顧它的功能,白盒測試的主要方法有邏輯驅動、基路測試等,主要用於軟體驗證。

「白盒」法全面了解程序內部邏輯結構、對所有邏輯路徑進行測試。「白盒」法是窮舉路徑測試。在使用這一方案時,測試者必須檢查程序的內部結構,從檢查程序的邏輯著手,得出測試數據。貫穿程序的獨立路徑數是天文數字。但即使每條路徑都測試了仍然可能有錯誤。第一,窮舉路徑測試決不能查出程序違反了設計規范,即程序本身是個錯誤的程序。第二,窮舉路徑測試不可能查出程序中因遺漏路徑而出錯。第三,窮舉路徑測試可能發現不了一些與數據相關的錯誤。

3.ALAC(Act-like-a-customer)測試

ALAC測試是一種基於客戶使用產品的知識開發出來的測試方法。ALAC測試是基於復雜的軟體產品有許多錯誤的原則。最大的受益者是用戶,缺陷查找和改正將針對哪些客戶最容易遇到的錯誤。

單元測試的基本方法

單元測試的對象是軟體設計的最小單位模塊。單元測試的依據是詳細設描述,單元測試應對模塊內所有重要的控制路徑設計測試用例,以便發現模塊內部的錯誤。單元測試多採用白盒測試技術,系統內多個模塊可以並行地進行測試。
單元測試任務

單元測試任務包括:1 模塊介面測試;2 模塊局部數據結構測試;3 模塊邊界條件測試;4 模塊中所有獨立執行通路測試;5 模塊的各條錯誤處理通路測試。

模塊介面測試是單元測試的基礎。只有在數據能正確流入、流出模塊的前提下,其他測試才有意義。測試介面正確與否應該考慮下列因素:
1 輸入的實際參數與形式參數的個數是否相同;
2 輸入的實際參數與形式參數的屬性是否匹配;
3 輸入的實際參數與形式參數的量綱是否一致;
4 調用其他模塊時所給實際參數的個數是否與被調模塊的形參個數相同;
5 調用其他模塊時所給實際參數的屬性是否與被調模塊的形參屬性匹配;
6調用其他模塊時所給實際參數的量綱是否與被調模塊的形參量綱一致;
7 調用預定義函數時所用參數的個數、屬性和次序是否正確;
8 是否存在與當前入口點無關的參數引用;
9 是否修改了只讀型參數;
10 對全程變數的定義各模塊是否一致;
11是否把某些約束作為參數傳遞。

如果模塊內包括外部輸入輸出,還應該考慮下列因素:
1 文件屬性是否正確;
2 OPEN/CLOSE語句是否正確;
3 格式說明與輸入輸出語句是否匹配;
4緩沖區大小與記錄長度是否匹配;
5文件使用前是否已經打開;
6是否處理了文件尾;
7是否處理了輸入/輸出錯誤;
8輸出信息中是否有文字性錯誤;

檢查局部數據結構是為了保證臨時存儲在模塊內的數據在程序執行過程中完整、正確。局部數據結構往往是錯誤的根源,應仔細設計測試用例,力求發現下面幾類錯誤:
1 不合適或不相容的類型說明;
2變數無初值;
3變數初始化或省缺值有錯;
4不正確的變數名(拼錯或不正確地截斷);
5出現上溢、下溢和地址異常。

除了局部數據結構外,如果可能,單元測試時還應該查清全局數據(例如FORTRAN的公用區)對模塊的影響。

在模塊中應對每一條獨立執行路徑進行測試,單元測試的基本任務是保證模塊中每條語句至少執行一次。此時設計測試用例是為了發現因錯誤計算、不正確的比較和不適當的控制流造成的錯誤。此時基本路徑測試和循環測試是最常用且最有效的測試技術。計算中常見的錯誤包括:
1 誤解或用錯了算符優先順序;
2混合類型運算;
3變數初值錯;
4精度不夠;
5表達式符號錯。

比較判斷與控制流常常緊密相關,測試用例還應致力於發現下列錯誤:
1不同數據類型的對象之間進行比較;
2錯誤地使用邏輯運算符或優先順序;
3因計算機表示的局限性,期望理論上相等而實際上不相等的兩個量相等;
4比較運算或變數出錯;
5循環終止條件或不可能出現;
6迭代發散時不能退出;
7錯誤地修改了循環變數。

一個好的設計應能預見各種出錯條件,並預設各種出錯處理通路,出錯處理通路同樣需要認真測試,測試應著重檢查下列問題:
1輸出的出錯信息難以理解;
2記錄的錯誤與實際遇到的錯誤不相符;
3在程序自定義的出錯處理段運行之前,系統已介入;
4異常處理不當;
5錯誤陳述中未能提供足夠的定位出錯信息。

邊界條件測試是單元測試中最後,也是最重要的一項任務。眾的周知,軟體經常在邊界上失效,採用邊界值分析技術,針對邊界值及其左、右設計測試用例,很有可能發現新的錯誤。

單元測試過程

一般認為單元測試應緊接在編碼之後,當源程序編制完成並通過復審和編譯檢查,便可開始單元測試。測試用例的設計應與復審工作相結合,根據設計信息選取測試數據,將增大發現上述各類錯誤的可能性。在確定測試用例的同時,應給出期望結果。

應為測試模塊開發一個驅動模塊(driver)和(或)若干個樁模塊(stub),下圖顯示了一般單元測試的環境。驅動模塊在大多數場合稱為「主程序」,它接收測試數據並將這些數據傳遞到被測試模塊,被測試模塊被調用後,「主程序」列印「進入-退出」消息。

驅動模塊和樁模塊是測試使用的軟體,而不是軟體產品的組成部分,但它需要一定的開發費用。若驅動和樁模塊比較簡單,實際開銷相對低些。遺憾的是,僅用簡單的驅動模塊和樁模塊不能完成某些模塊的測試任務,這些模塊的單元測試只能採用下面討論的綜合測試方法。

提高模塊的內聚度可簡化單元測試,如果每個模塊只能完成一個,所需測試用例數目將顯著減少,模塊中的錯誤也更容易發現。

⑶ 求自動化測試腳本編寫教程,別就說讓我去學各式語言,詳細點。

你好
我是從事自動化測試方面的
1、自動化測試腳本,包括下面幾個方面
1)CLI自動化測試,其應用腳本技術,包括tcl、phython、ruby,你學好一門自動化測試腳本即可,因為CLI的自動化測試就是應用腳本去模擬人工輸入命令行,建議學習一下phython,因為其強大的社區,還有不亞於高級語言的編程思想。
2)工具方面,自動化測試工具例如:RFT的腳本包括java與.net;QPT的腳本為VB等。你有一定的編程基礎的話,就不要停留在工具試用方面,而是要去重點學習一下其工具思想。你沒有基礎的話,你就從其RFT與QTP的幫助文檔看起,裡面都有關於這些功能的API的。
3)自動化測試框架,這個方面不是單存的自動化測試腳本了,而是利用編程技巧,結合各種自動化測試理念去構建適合自己的自動化測試框架,則就要求一定高度的編程技巧和各種知識了。

你需要自動化測試腳本編寫教程,這先要看你去掌握什麼方面的的自動化測試腳本了,我可以提供你教程,但關鍵先看你的需求
這樣,推薦你一個博客, 是專注自動化測試的博客。你先看看,我覺得你對自動化測試認識不深,你先把自動化測試弄得有點小明白,再去看看。你需要什麼,你的方向是什麼:
51tesing上的「散步的SUN」的博客,這是我的博客,你可以在網路裡面直接輸入「散步的SUN」就是其博客了。上面有各種關於自動化測試方面的知識,希望對你又幫助吧。
或者對自動化測試有興趣的,可以發短消息或者郵件我吧([email protected]),有機會一起學習探討下

⑷ 如何用java寫腳本,實現windows客戶端自動化測試

你的monkeyrunner腳本要用android自己的monkeyrunner
解釋器
(基於jython)
來載入,eclipse默認的是標准python解釋器,當然會報錯。最簡單的方法是..忽略它...當然你也可以自己配置eclipse的python解釋器選擇。

熱點內容
滑板鞋腳本視頻 發布:2025-02-02 09:48:54 瀏覽:433
群暉怎麼玩安卓模擬器 發布:2025-02-02 09:45:23 瀏覽:557
三星安卓12彩蛋怎麼玩 發布:2025-02-02 09:44:39 瀏覽:744
電腦顯示連接伺服器錯誤 發布:2025-02-02 09:24:10 瀏覽:537
瑞芯微開發板編譯 發布:2025-02-02 09:22:54 瀏覽:147
linux虛擬機用gcc編譯時顯示錯誤 發布:2025-02-02 09:14:01 瀏覽:240
java駝峰 發布:2025-02-02 09:13:26 瀏覽:652
魔獸腳本怎麼用 發布:2025-02-02 09:10:28 瀏覽:538
linuxadobe 發布:2025-02-02 09:09:43 瀏覽:212
sql2000資料庫連接 發布:2025-02-02 09:09:43 瀏覽:726