想做自動(dòng)化,首先得了解一下自動(dòng)化測(cè)試的一些常見(jiàn)問(wèn)題。 一、自動(dòng)化測(cè)試一些問(wèn)題 1. 什么是自動(dòng)化測(cè)試? 自動(dòng)化測(cè)試,顧名思義,自動(dòng)完成測(cè)試工作。 通過(guò)一些自動(dòng)化測(cè)試工具或自己造...
想做自動(dòng)化,首先得了解一下自動(dòng)化測(cè)試的一些常見(jiàn)問(wèn)題。
一、自動(dòng)化測(cè)試一些問(wèn)題
1. 什么是自動(dòng)化測(cè)試?
自動(dòng)化測(cè)試,顧名思義,自動(dòng)完成測(cè)試工作。
通過(guò)一些自動(dòng)化測(cè)試工具或自己造輪子實(shí)現(xiàn)模擬之前人工點(diǎn)點(diǎn)/寫(xiě)寫(xiě)的工作并驗(yàn)證其結(jié)果完成整個(gè)測(cè)試過(guò)程,這樣的測(cè)試過(guò)程,便是自動(dòng)化測(cè)試。
自動(dòng)化測(cè)試,看上去很美,感覺(jué)好像是第一次工業(yè)革命,它開(kāi)創(chuàng)了以機(jī)器代替手工勞動(dòng)的時(shí)代,實(shí)則不然。
因?yàn)槊恳粋€(gè)自動(dòng)化測(cè)試的case都是從手工測(cè)試做起的,如果沒(méi)有手工測(cè)試的基礎(chǔ),是沒(méi)法進(jìn)行自動(dòng)化測(cè)試。?
2. 為什么要進(jìn)行自動(dòng)化測(cè)試
為什么進(jìn)行自動(dòng)化測(cè)試,答案要從自動(dòng)測(cè)試的收益和人肉測(cè)試的成本說(shuō)起:1)自動(dòng)化測(cè)試節(jié)約成本(根據(jù)項(xiàng)目)
畢竟自動(dòng)化測(cè)試確實(shí)解放了一批人力(人力成本才是IT公司最大的成本),可以讓機(jī)器沒(méi)日沒(méi)夜的執(zhí)行一些重復(fù)勞動(dòng).
2)有些測(cè)試項(xiàng)目手工很難實(shí)現(xiàn)(手工成本較高)
比如12306的壓力測(cè)試、負(fù)載測(cè)試,同時(shí)找那么多人去測(cè)試不現(xiàn)實(shí)可以通過(guò)機(jī)器去模擬.
3)項(xiàng)目質(zhì)量流程需要
比如版本管理需要build verify,以保證check in的code不會(huì)影響版本庫(kù)。
類(lèi)似于smoke test
?
二、自動(dòng)化測(cè)試的優(yōu)缺點(diǎn)
優(yōu)點(diǎn):
避免測(cè)試人員因重復(fù)勞動(dòng)產(chǎn)生厭倦
提高測(cè)試效率
保證每次測(cè)試地一致性和可重復(fù)性
更好的利用無(wú)人值守時(shí)間
進(jìn)行一些手工無(wú)法進(jìn)行的測(cè)試
缺點(diǎn):
維護(hù)成本相對(duì)比較高
系統(tǒng)開(kāi)發(fā)時(shí)間不一定能縮短
還是得依賴手工測(cè)試,很多問(wèn)題無(wú)法發(fā)現(xiàn)
什么樣的項(xiàng)目適合做自動(dòng)化測(cè)試(dev手一抖,auto忙一宿)三、有以下幾個(gè)特點(diǎn)的項(xiàng)目比較適合自動(dòng)化測(cè)試:
1. 項(xiàng)目變動(dòng)少
2. 周期長(zhǎng)
3. 項(xiàng)目資源足夠(自動(dòng)化不是一個(gè)人完成的,需要一幫人長(zhǎng)期維護(hù))四、什么樣的人適合做自動(dòng)化測(cè)試?
這個(gè)問(wèn)題是寫(xiě)給想要做自動(dòng)化測(cè)試的人,或許你以為軟件測(cè)試的門(mén)檻很低,低到任何人都可以做,隨便點(diǎn)點(diǎn)就可以了,這個(gè)行業(yè)太low了,所以你想做自動(dòng)化測(cè)試,提升自己的逼格,我想說(shuō)手工測(cè)試并不low,如果讓一個(gè)什么都不懂,一點(diǎn)業(yè)務(wù)基礎(chǔ)都沒(méi)有的人去做測(cè)試,能測(cè)出來(lái)問(wèn)題嗎?不要忽略你的業(yè)務(wù)知識(shí)儲(chǔ)你的業(yè)務(wù)知識(shí)儲(chǔ)備的積累能讓你成為不可替代的行業(yè)專(zhuān)家,而做自動(dòng)化的碼農(nóng)會(huì)因?yàn)橐粋€(gè)時(shí)代的更迭被小鮮肉替代。
究竟什么什么樣的人能做自動(dòng)化測(cè)試?
我的理解分一下幾點(diǎn):
1)擁有代碼能力
掌握一門(mén)開(kāi)發(fā)語(yǔ)言,java、Python、ruby、c#2)熟悉被測(cè)系統(tǒng)
比如你是web測(cè)試,你就得懂js、css、html、xpath
你是移動(dòng)端測(cè)試,你就得具備Android 開(kāi)發(fā)基礎(chǔ)和iOS開(kāi)發(fā)基礎(chǔ),會(huì)debug app
你是 C/S測(cè)試你就要很熟悉[<u>TCP</u>](javascript:;)、IP協(xié)議3)掌握一套自動(dòng)化測(cè)試框架(工具)
比如:
selenium/appium
nunit/testng
robot framework/cucumber4)善于學(xué)習(xí),達(dá)到知其然知其所以然
IT行業(yè)變化太快,每隔一段時(shí)間就會(huì)出現(xiàn)一些新興的東西,也會(huì)出現(xiàn)原來(lái)很火的東西逐漸沒(méi)落,誰(shuí)也無(wú)法預(yù)測(cè)。
1.曾經(jīng)諾基亞還是手機(jī)霸主,靠塞班一統(tǒng)天下,然而不思進(jìn)取,落得個(gè)賣(mài)身求生存.
2.曾經(jīng)qtp很火,曾經(jīng)selenium也很火,現(xiàn)在appium也很火
?
如果你想轉(zhuǎn)成自動(dòng)化測(cè)試的,可私聊我,邀你進(jìn)群,里面有從基礎(chǔ)開(kāi)始學(xué)習(xí)的一下自動(dòng)化學(xué)習(xí)視頻講解,還有大牛幫你解決疑惑。
軟件行業(yè)從桌面軟件到web端,又從web端遷移到移動(dòng)端,誰(shuí)也不知道下一個(gè)是什么。而我們作為軟件行業(yè)的從業(yè)者,不能因?yàn)槟切┖芑鸬臇|西不火了而讓自己沒(méi)落,一個(gè)人最為核心的能力就是學(xué)習(xí)能力。
如果你善于學(xué)習(xí),你就不必?fù)?dān)心這些變遷,因?yàn)槟憧梢院翢o(wú)壓力的遷移,selenium的原理你掌握了,學(xué)習(xí)appium簡(jiǎn)直小菜一碟,因?yàn)閍ppium使用的是
selenium WebDriver protocol 。1、如果你能做到知其然知其所以然,你也可以造輪子,改造appium,畢竟現(xiàn)在很多功能需要完善。
2、如果你沒(méi)有達(dá)到以上的幾點(diǎn),建議你還是做手工測(cè)試吧。
3、如果你有代碼基礎(chǔ),想要從事自動(dòng)化測(cè)試怎么去學(xué)習(xí)?
1、很多初學(xué)者很糾結(jié),學(xué)qtp還是學(xué)selenium
我的建議是學(xué)selenium,開(kāi)源的,免費(fèi)的,你可以下載源碼研究,去了解其原理,再者現(xiàn)在selenium的資料不要太多,隨便搜搜一大堆,學(xué)起來(lái)比較輕松。
不建議學(xué)selenium IDE錄制,當(dāng)然你可以通過(guò)錄制一些然后轉(zhuǎn)換為相應(yīng)的腳本去學(xué)習(xí),等你學(xué)好了selenium, 再去學(xué)appium你會(huì)有一種天然的似曾相識(shí)。2、為什么不建議學(xué)QTP/UFT?
因?yàn)槭召M(fèi)/臃腫/現(xiàn)在做桌面軟件測(cè)試的工作已經(jīng)不太多了。3、關(guān)于買(mǎi)書(shū)
自動(dòng)化工具類(lèi)的書(shū),不建議買(mǎi),很多書(shū)已經(jīng)過(guò)時(shí)了,并且質(zhì)量渣渣,你買(mǎi)了那些書(shū)中的code已經(jīng)不能用了,如果你真的想學(xué),就去官網(wǎng)找example,去相應(yīng)的社區(qū)和群交流,或者直接看API/源碼.當(dāng)然,測(cè)試基礎(chǔ)類(lèi)的書(shū)籍,至少得看過(guò)一本,有系統(tǒng)性的知識(shí)。
五、總結(jié):
新人學(xué)習(xí)自動(dòng)化測(cè)試要:
1.掌握一門(mén)開(kāi)發(fā)語(yǔ)言
2. 掌握一些基礎(chǔ)的知識(shí)
3.自動(dòng)化方面,少買(mǎi)書(shū),多看測(cè)試框架的Document,多去技術(shù)社區(qū)交流
4.不斷學(xué)習(xí),提升自己發(fā)現(xiàn)問(wèn)題,解決問(wèn)題的能力
5. 不做伸手黨,多動(dòng)手
總而言之,學(xué)習(xí)一門(mén)開(kāi)發(fā)語(yǔ)言,Java/Python,學(xué)習(xí)一個(gè)測(cè)試工具selenium/appium,掌握一個(gè)測(cè)試框架,testng,cucumber 等
平時(shí)多沉淀,然后抓住機(jī)遇,即可輕而易舉的轉(zhuǎn)型自動(dòng)化測(cè)試。