轉載請標明出處,原文地址:http://blog.csdn.net/w565911788/article/details/47660789
(1)STAF(SoftwareTesting Automation Framework)是一個由IBM開發的開源、跨平台、支援多語言且基於可重用的組件來構建的自動化測試架構,而這一系列的組件都是一些可以處理調用、資源管理、監視等一些列的服務組成(STAFProc進程STAF Daemo守護進程、服務、變數、執行個體、控制代碼、服務要求、外掛程式等)。STAF架構為自動化測試建立了基礎,在高層解決方案提供一種可插撥的機制,支援多種平台與多種語言。
=> ECS-Platform-雲端服務器叢集管理平台,功能近似STAF,增強易用性、安全和效能,支援Windows(Socket TCP/IP)、Linux平台(ssh);支援公網、私網複合網路;本地及遠程命令引擎;檔案批量發送下載;自動化指令碼任務定製;動態外掛程式擴充;工具平台整合;可作為自動化架構應用於伺服器群的自動化管理營運和測試等。首頁:http://code.google.com/p/ecstool-platform/
(2) Cucumber 是一個能夠理解用自然語言描述的測試案例的支援行為驅動開發(BDD)的自動化測試載入器,用Ruby編寫,支援Java和·Net等多種開發語言。
A. Describebehaviour in plain text
B. Write a stepdefinition in Ruby
C. Run and watchit fail
D. Write code tomake the step pass
E. Run again andsee the step pass
F. Repeat 2-5 untilgreen like a cuke
G. Repeat 1-6until the money runs out
(3)RSpec: 行為驅動開發(Behaviour Driven Development,簡稱BDD)是一種融合了可接受性(驗收)測試驅動計劃(Acceptance Test Driven Planning),域驅動設計(Domain Driven Design)以及測試驅動開發(TestDriven Development,簡稱TDD)的敏捷開發模型。RSpec為BDD開發提供TDD支援。它的主要作用就是描述我們對系統執行某個範例(example)的期望行為(behavior)。repec指定期望的傳輸服務:包括儘力傳送服務,受控負載,保障服務三種模式。
(4)Jenkins是一個開源軟體項目,旨在提供一個開放易用的軟體平台,使軟體的持續整合變成可能。基於Java開發的一種持續整合工具,用於監控持續重複的工作,功能包括:
A. 持續的軟體版本發布/測試專案。
B. 監控外部調用執行的工作。
(5)JMeter是Apache組織開發的基於Java的壓力測試工具。用於對軟體做壓力測試,它最初被設計用於Web應用測試但後來擴充到其他測試領域。它可以用於測試靜態和動態資源例如靜態檔案、Java 小服務程式、CGI指令碼、Java 對象、資料庫, FTP 伺服器,等等。JMeter可以用於對伺服器、網路或對象類比巨大的負載,來自不同壓力類別下測試它們的強度和分析整體效能。在設計階段,JMeter能夠充當HTTP PROXY(代理)來記錄IE/NETSCAPE的HTTP請求,也可以記錄apache等WebServer的log檔案來重現HTTP流量。當這些HTTP用戶端請求被記錄以後,測試回合時可以方便的設定重複次數和並發度(線程數)來產生巨大的流量。JMeter還提供可視化組件以及報表工具把量伺服器在不同壓力下的效能展現出來。
=> JMeter的作用:
A. 能夠對HTTP和FTP伺服器進行壓力[1]和效能測試,也可以對任何資料庫進行同樣的測試(通過JDBC)。
B. 完全的可移植性和100% 純java。
C. 完全 Swing 和輕量組件支援(先行編譯的JAR使用javax.swing.*)包。
D. 完全多線程架構允許通過多個線程並發取樣和通過單獨的線程組對不同的功能同時取樣。
E. 精心的GUI設計允許快速控制項目和更精確的計時。
F. 緩衝和離線分析/回放測試結果。
=> JMeter的高可擴充性:
A. 可連結的取樣器允許無限制的測試能力。
B. 各種負載統計表和可連結的計時器可供選擇。
C. 資料分析和可視化外掛程式提供了很好的可擴充性以及個人化。
D. 具有提供動態輸入到測試的功能(包括Javascript)。
E. 支援指令碼編程的取樣器(在1.9.2及以上版本支援BeanShell)。
=> Jmeter術語:
A. Label:定義的HTTP請求名稱
B. Samples:表示這次測試中一共發出了多少個請求
C. Average:訪問頁面的平均回應時間
D. Min: 訪問頁面的最小回應時間
E. Max: 訪問頁面的最大回應時間
F. Error%:錯誤的請求的數量/請求的總數
E. Throughput:每秒完成的請求數
F. KB/Sec:每秒從伺服器端接收到的資料量
(6) Selenium 是ThoughtWorks專門為Web應用程式編寫的一個驗收測試工具,架構底層使用JavaScript類比真實使用者對瀏覽器進行操作。Selenium測試直接運行在瀏覽器中,就像真正的使用者在操作一樣。支援的瀏覽器包括IE(7、8、9)、MozillaFirefox、Mozilla Suite、Chrome、Safari等。這個工具的主要功能包括:測試與瀏覽器的相容性——測試你的應用程式看是否能夠很好得工作在不同瀏覽器和作業系統之上。測試系統功能——建立迴歸測試檢驗軟體功能和使用者需求。支援自動錄製動作和自動產生.Net、Java、Perl等不同語言的測試指令碼。
(7) Appium是一個開源、跨平台的自動化測試載入器,用於測試原生和輕量行動裝置 App,支援iOS, Android 和FirefoxOS平台。Appium驅動蘋果的UIAutomation庫和 Android 的UiAutomator架構,使用 Selenium 的WebDriver JSON 協議。Appinm的iOS支援是基於Dan Cuellar's 的iOS Auto. Appium同時綁定了Selendroid用於老的 Android 平台測試。
=> 使用Appium進行自動化測試有如下好處:
A. Appium在不同平台中使用了標準的自動化APIs,所以在跨平台時,不需要重新編譯或者修改自己的應用。
B. Appium支援Selenium WebDriver支援的所有語言,如java、Object-C、JavaScript、Php、Python、Ruby、C#、Clojure,或者Perl語言,更可以使用SeleniumWebDriver的Api。
C. Appium實現了真正的跨平台自動化測試,Appium支援任何一種測試架構。如果只使用Apple的UIAutomation,我們只能用javascript來編寫測試案例,而且只能用Instruction來運行測試案例。如果只使用Google的UIAutomation,我們就只能用java來編寫測試案例。
(8)Watir(Web Application Testing in Ruby)是一個使用 Ruby 實現的開源Web 自動化測試架構,相對於那些龐大的商業工具來說,它很小巧,也很靈活,提供的功能也足夠用。Watir可以使用IE(IE5.5及以上版本),Firefox,Chrome進行Web應用測試。支援Windows(2000及以上版本),Linux,Ubuntu,Mac。
(9)單元測試工具
C/C++語言開發的首選利器->CppTest,測試覆蓋率統計->gcov/lcov
Java環境單元測試的終極利器->Junit, 測試覆蓋率統計->Cobertura/EclEmma/clover
.Net環境單元測試的首選利器->Nunit, 測試覆蓋率統計->visual studio
編譯被測程式的時候添加統計覆蓋率選項->執行測試->命令收集產生測試覆蓋率資訊
(10)SoapUI是一個開源測試載入器,通過soap/http來檢查、調用、實現Web Service的功能/負載/符合性測試。該工具既可作為一個單獨的測試軟體使用,也可利用外掛程式整合到Eclipse,maven2.X,Netbeans和intellij中使用。soapUI pro是soapUI的商業非開源版本,實現的功能較開源的soapUI更多。
轉載請標明出處,原文地址:http://blog.csdn.net/w565911788/article/details/47660789