我們常見的功能測試是如何進行的唁毒?設(shè)計測試用例,然后測試人員執(zhí)行測試用例星爪,對比執(zhí)行后的實際結(jié)果與預期結(jié)果是否相等浆西。如果相等,測試通過顽腾;如果不相等近零,測試失敗。
其實自動化測試做的事情和功能測試沒有差別抄肖,自動化測試主要分三個層面去自動化久信,單元測試自動化、接口測試自動化漓摩、web測試自動化裙士。
>>>>?單元測試自動化
調(diào)用被測的類或者方法,根據(jù)類或者方法的參數(shù)管毙,傳入對應的參數(shù)腿椎,然后得到一個返回結(jié)果。最終判斷返回的結(jié)果是否與預期結(jié)果相等夭咬。相等啃炸,測試通過,不相等皱埠,測試失敗肮帐。所以呢在單元測試里面主要是關(guān)注的代碼實現(xiàn)與邏輯,這個當然一般是由開發(fā)完成边器。
>>>>?接口測試自動化
根據(jù)接口文檔训枢,編寫設(shè)計測試用例,根據(jù)測試用例向接口提交請求忘巧,根據(jù)返回的結(jié)果數(shù)據(jù)去判斷狀態(tài)碼恒界、響應的msg去判斷接口測試是否通過。所以在接口測試關(guān)注的是數(shù)據(jù)砚嘴,只要數(shù)據(jù)正確了十酣,功能就基本完成一大半了,剩下的就是把數(shù)據(jù)展示在前端頁面上际长。
>>>>?web測試自動化
web測試自動化耸采,這種測試更加貼近用戶的行為,模擬用戶點擊了某個按鈕工育,向輸入框輸入了什么虾宇。比如一個登陸功能,用戶輸入了賬號密碼點擊到哪里如绸,是可以看見登陸有沒有成功的嘱朽。單web自動化就并不知道用戶剛才的點擊有沒有生效旭贬,所以這個時候就要數(shù)據(jù)證明了。比如登陸成功后頁面會跳轉(zhuǎn)到主頁面搪泳,頁面上會顯示“歡迎 xxxx”稀轨。這個就是登陸成功的有效數(shù)據(jù)證明,于是岸军,web自動化登陸成功后奋刽,就會去獲取這個數(shù)據(jù)進行斷言。
如果相等凛膏,測試通過杨名。如果不相等,測試失敗猖毫。web測試自動化關(guān)注的是用戶的操作行為,頁面上的按鈕和輸入框是否可用须喂。
從測試的行為本質(zhì)上去分析吁断,功能測試和自動化測試沒有區(qū)別。唯一的區(qū)別坞生,一個是人工操作仔役,一個是由代碼工具執(zhí)行。
自動化測試工具介紹
QTP
QTP是QuickTest Professional的簡稱是己,是一種自動測試工具又兵。使用QTP的目的是想用它來執(zhí)行重復的手動測試,主要是用于回歸測試和測試同一軟件的新版本卒废。
QuickTest針對的是GUI應用程序沛厨,包括傳統(tǒng)的Windows應用程序,以越來越流行的Web應用摔认。它可以覆蓋絕大多數(shù)的軟件開發(fā)技術(shù)逆皮,簡單高效,并具備測試用例可重用的特點参袱。其中包括:創(chuàng)建測試电谣、插入檢查點、檢驗數(shù)據(jù)抹蚀、增強測試剿牺、運行測試、分析結(jié)果和維護測試等方面环壤。
WinRunner
Mercury Interactive公司的WinRunner是一種企業(yè)級的功能測試工具晒来,用于檢測應用程序是否能夠達到預期的功能及正常運行。通過自動錄制镐捧、檢測和回放用戶的應用操作潜索,WinRunner能夠有效地幫助測試人員對復雜的企業(yè)級應用的不同發(fā)布版進行測試臭增,提高測試人員的工作效率和質(zhì)量,確敝裣埃跨平臺的誊抛、復雜的企業(yè)級應用無故障發(fā)布及長期穩(wěn)定運行。
Rational Robot
Rational Robot是業(yè)界最頂尖的功能測試工具整陌,它甚至可以在測試人員學習高級腳本技術(shù)之前幫助其進行成功的測試拗窃。它集成在測試人員的桌面IBM Rational Test Manager上,在這里測試人員可以計劃泌辫、組織随夸、執(zhí)行、管理和報告所有測試活動震放,包括手動測試報告宾毒。這種測試和管理的雙重功能是自動化測試的理想開始。
AdventNet QEngine
AdventNet QEngine是一個應用廣泛且獨立于平臺的自動化軟件測試工具殿遂,可用于Web功能測試诈铛、Web性能測試、Java應用功能測試墨礁、Java API測試幢竹、SOAP測試、回歸測試和Java應用性能測試恩静。支持對于使用HTML焕毫、JSP、ASP驶乾、.NET邑飒、PHP、JavaScript/VBScript轻掩、XML幸乒、SOAP、WSDL唇牧、e-commerce罕扎、傳統(tǒng)客戶端/服務器等開發(fā)的應用程序進行測試。此工具以Java開發(fā)丐重,因此便于移植和提供多平臺支持腔召。
SilkTest
SilkTest是業(yè)界領(lǐng)先的、用于對企業(yè)級應用進行功能測試的產(chǎn)品扮惦,可用于測試Web臀蛛、Java或是傳統(tǒng)的C/S結(jié)構(gòu)。SilkTest提供了許多功能,使用戶能夠高效率地進行軟件自動化測試浊仆。這些功能包括:測試的計劃和管理客峭;直接的數(shù)據(jù)庫訪問及校驗;靈活抡柿、強大的4Test腳本語言舔琅,內(nèi)置的恢復系統(tǒng)(Recovery System);以及具有使用同一套腳本進行跨平臺洲劣、跨瀏覽器和技術(shù)進行測試的能力备蚓。
QA Run
QARun的測試實現(xiàn)方式是通過鼠標移動、鍵盤點擊操作被測應用囱稽,即而得到相應的測試腳本郊尝,對該腳本可以進行編輯和調(diào)試战惊。在記錄的過程中可針對被測應用中所包含的功能點進行基線值的建立流昏,換句話說就是在插入檢查點的同時建立期望值。在這里檢查點是目標系統(tǒng)的一個特殊方面在一特定點的期望狀態(tài)吞获。通常横缔,檢查點在QARun提示目標系統(tǒng)執(zhí)行一系列事件之后被執(zhí)行。檢查點用于確定實際結(jié)果與期望結(jié)果是否相同衫哥。
Test Partner
Test Partner是一個自動化的功能測試工具,它專為測試基于微軟襟锐、Java和Web技術(shù)的復雜應用而設(shè)計撤逢。它使測試人員和開發(fā)人員都可以使用可視的腳本編制和自動向?qū)砩煽芍貜偷臏y試,用戶可以調(diào)用VBA的所有功能粮坞,并進行任何水平層次和細節(jié)的測試蚊荣。TestPartner的腳本開發(fā)采用通用的、分層的方式來進行莫杈。沒有編程知識的測試人員也可以通過TestPartner的可視化導航器來快速創(chuàng)建測試并執(zhí)行互例。通過可視的導航器錄制并回放測試,每一個測試都將被展示為樹狀結(jié)構(gòu)筝闹,以清楚地顯現(xiàn)測試通過應用的路徑媳叨。
Holodeck?
Holodeck是一種高級故障注入工具,它允許您在監(jiān)視和日志應用程序所做的一切時攻擊應用程序——每個函數(shù)調(diào)用关顷、注冊表條目糊秆、讀取或?qū)懭氲囊欢螖?shù)據(jù)。
Telelogic TAU
TAU第二代包含三個最新的议双、最強大的技術(shù)用來加速大規(guī)模軟件開發(fā)和測試:統(tǒng)一建模語言(UML)及它的許多最新修訂版本中的特性痘番,UML2.0;功能強大的測試語言TTCN-3和新的構(gòu)造系統(tǒng)的方法:Model Driven Architecture(模型驅(qū)動構(gòu)架)。這三個新的業(yè)界標準結(jié)合成TAU的已經(jīng)過認可的軟件開發(fā)平臺汞舱,形成了一個系統(tǒng)伍纫,一個一流的穩(wěn)定可靠的工具解決方案。TAU第二代是系統(tǒng)與軟件開發(fā)解決方案的一個突破昂芜,它把業(yè)界從使用了太長時間的手工莹规、易出錯、以代碼為中心的方法中釋放出來说铃,自然而然地邁向下一步访惜,一個更加可視化、自動化及可靠的開發(fā)方法腻扇。
Telelogic TAU/Tester是基于通用測試語言TTCN-3债热,用于自動化的系統(tǒng)和集成測試的強大工具。TAU/Tester以現(xiàn)代化的開發(fā)工具為基礎(chǔ)幼苛,提供高層測試功能窒篱,支持整個測試生命周期,加速自動化測試舶沿。TAU/Tester可使用戶特別關(guān)注于測試的開發(fā)墙杯,因為TTCN-3語言是獨立于開發(fā)語言或測試設(shè)備的,且是抽象和可移植的括荡。
AutoRunner
AutoRunner是黑盒測試工具高镐,可以用來完成功能測試、回歸測試畸冲,可以提高測試效率嫉髓,降低測試人工成本。
產(chǎn)品可以對以下類型對象進行GUI功能性測試:
1 Windows類型對象邑闲,一般為用C++/Delphi/VB/VFP/PB/.NetForm等技術(shù)開發(fā)的桌面程序算行。
2 IE網(wǎng)頁對象,一般性的網(wǎng)站苫耸,比如大的門戶類網(wǎng)站州邢。
3 Java對象,一般為用AWT/Swing/SWT等技術(shù)開發(fā)的桌面程序褪子。
4 Flex對象量淌,網(wǎng)頁的內(nèi)容是用Flex開發(fā)的。
5 Silverlight對象褐筛,網(wǎng)頁的內(nèi)容是用Silverlight開發(fā)的类少。
6 WPF對象,一般為用WPF技術(shù)開發(fā)的桌面程序渔扎。
7 QT對象硫狞,一般為用QT技術(shù)開發(fā)的桌面程序。
Phoenix Framework
Phoenix Framework是一款基于 Selenium,Webdriver残吩,autoIt研發(fā)的一款集資源管理和測試于一體的Web自動化測試工具财忽。使用該工具的界面創(chuàng)建用例,組裝腳本泣侮,啟動執(zhí)行即彪。使用該工具其他開放的接口,可手動創(chuàng)建腳本活尊,組裝并執(zhí)行隶校。它支持兩種部署模式,第一種是Server-Client方式蛹锰,Server與Client均為EXE程序深胳,通信協(xié)議是Socket;另一種是WEB版部署铜犬,方便與現(xiàn)有系統(tǒng)集成舞终,支持Linux,將Server與Client放到Tomcat或Weblogic服務器下部署癣猾,通信協(xié)議為Http敛劝,通過WEB頁面控制并監(jiān)控Client端的執(zhí)行。
很多朋友都會認為纷宇,有了自動化夸盟,我們就可以無憂無慮地坐等測試報告了,但是其實并不是這樣的像捶。
因為能做自動化的項目满俗,一定是經(jīng)過很多次測試,并且框架和功能相對是比較穩(wěn)定的才能去編寫自動化測試代碼作岖。
不過確實自動化在項目上還是挺實用的:用了自動化,腳本才剛開始起步五芝,產(chǎn)品就已經(jīng)有所改動了痘儡。
自動化測試是一種輔助的方式,最重要的是一切要以做好功能測試為前提枢步。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?《小姐姐帶你學自動化測試》課程上線啦~
課程介紹??????
自動化測試是以“人為驅(qū)動的測試行為”轉(zhuǎn)化為“機器執(zhí)行”的一種過程沉删。
通常的“人為驅(qū)動的測試”是由測試人員根據(jù)測試用例執(zhí)行測試,得到實際結(jié)果與期望結(jié)果的比較醉途。
在此過程中矾瑰,為了節(jié)省人力、時間或硬件資源隘擎、提高測試效率殴穴,便引入了自動化測試的概念。
自動化測試是軟件測試的一個重要組成部分,它能完成許多手工測試無法實現(xiàn)或難以實現(xiàn)的測試采幌。
正確劲够、合理的實施自動測試能夠快速、全面的對軟件進行測試休傍,從而提高軟件質(zhì)量征绎。
本課程結(jié)合Python3+Selenmium2框架,主要將知識點在實例中實踐磨取,帶領(lǐng)大家一起完成Excel文檔操作人柿、Word文檔操作、Web頁面組件操作忙厌。
感興趣的同學凫岖,一起來學習吧~?有任何問題都可以后臺回復“木子”進行添加,小姐姐教你打代碼
本文參考資料:
http://blog.51cto.com/11392572/2105154
https://baike.baidu.com/item/%E8%87%AA%E5%8A%A8%E5%8C%96%E6%B5%8B%E8%AF%95
?????????????????????????????????????????????????????———— / END / ————
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 我會長成大樹慰毅,等你贊聲良木隘截。??