自動化早已不是那個自動化了连茧,談一談自動化測試現(xiàn)狀和自我感受……

前言

從2017年6月開始接觸自動化至今腹侣,已經(jīng)有2年多了乏德,從17年接觸UI自動化(unittest+selenium)到18年接觸接口自動化(unittest+requests)再到18年自己編寫自動化平臺(后臺使用python的flask撤奸,前端使用element+vue吠昭,沒有第三方自動化框架),不斷的學(xué)習(xí)成長胧瓜,加深了對自動化測試的理解矢棚,這邊就總結(jié)下自己對自動化測試的認(rèn)識。


首先府喳,吐槽一下很多實(shí)際自動化經(jīng)驗不到1年的而且停留在靠度娘抄襲demo的甚至度娘抄襲的代碼都不知道問題出在哪的小白(大神忽略蒲肋,本人小白,只是吐槽一下行業(yè)現(xiàn)狀)钝满,相信很多人從度娘上抄襲個uniitest(下文簡稱ut),pytest,testNG甚至是RF(robotframework)就說自己熟練使用自動化了兜粘,你們真的了解自動化么?筆者使用的是python語言(不鄙視其他語言弯蚜,任何語言都可以做自動化孔轴,只要你有能力),現(xiàn)在隨便找?guī)讉€python自動化相關(guān)的問題問一下碎捺,很多是企業(yè)真實(shí)實(shí)戰(zhàn)會遇到的場景或者企業(yè)領(lǐng)導(dǎo)的需求路鹰,也包含筆者面試的口述和手寫題。

先來些個基礎(chǔ)的問題收厨,18年1月辭職面的UI自動化面試題晋柱,筆者使用ut+se,面試官的問題如下(注:不寫答案帽氓,伸手黨請自行百度或查詢資料趣斤,這些基礎(chǔ)問題丟群里問是會被人鄙視的俩块。后面的內(nèi)容可能很多人會玻璃心或者感到不適黎休,如果感到不適,請自覺關(guān)閉本頁面玉凯,噴子請繞道势腮,沒有必要和你爭論):

Q1:

請說出selenium常用的八大定位法。

Q2:

請描述Selenium的xpath的結(jié)構(gòu)漫仆。

Q3:

請說明為什么不推薦使用xpath捎拯?

Q4:

當(dāng)使用xpath無法定位到一個元素時,可能的情況有哪些盲厌?

注:前4個問題只是問個基礎(chǔ)署照,最最基礎(chǔ)的問題,如果前4個都回答不了吗浩,直接下一位建芙,Q5開始的問題,是確定你有基礎(chǔ)了懂扼,開始往深一點(diǎn)的問禁荸,確定你對自動化的了解程度棚愤。

正文

現(xiàn)在我們正式開始提問:

Q5:

你說你使用過ut触创,請描述一下ut加載用例為什么以test_開頭。(此考驗?zāi)銓ψ詣踊蚣艿氖煜こ潭龋承╊I(lǐng)導(dǎo)就問你石蔗,測試用例為什么都是以test 開頭的?你:這是這個框架的設(shè)計忍法。 領(lǐng)導(dǎo):不行面粮,必須改成以我們公司名稱的縮寫開頭。你:邑退?眶诈??瓜饥?逝撬? 領(lǐng)導(dǎo):你明天不用來了。)

Q6:

ut執(zhí)行用例的順序是以什么規(guī)則執(zhí)行的乓土?

等等宪潮,什么?這就難了趣苏?這才剛起步歪 ~ ~ ~ 我天狡相。。食磕。整天說自己熟練甚至精通自動化的尽棕,連自動化框架原理都不知道?你好意思說你自己精通自動化彬伦?要是讓你二次開發(fā)自動化框架滔悉,優(yōu)化執(zhí)行效率之類的,你是不是得上天单绑?你來面的是自動化工程師崗位回官,不是黑盒點(diǎn)點(diǎn)點(diǎn)崗位歪 ~ ~ ~ (有人說錢不到位,你能力都不夠搂橙,我怎么給你錢歉提?不要把順序搞返了,阿里P7的崗位区转,給你一年100萬的總包苔巨,你能做的了P7做的事么?道理就是這樣废离,先有能力侄泽,才有談判的資本。ut雖然在一線鄙視鏈厅缺,但是我在度娘上看到過一個帖子蔬顾,改ut源碼宴偿,把執(zhí)行效率提升了幾十倍,你有那能力不诀豁?)

Ok窄刘,能看到這里的基本上也可以確定你不是玻璃心或者噴子了,現(xiàn)在我講述一下我今年7月面試的幾個崗位舷胜,這些崗位是真實(shí)要求你能做起自動化的娩践,坐標(biāo)杭州,起薪15K烹骨,7月面試5天翻伺,由于學(xué)歷限制以及能力不足,總收獲offer8個沮焕,崗位的面試題如下:

Q7:

你在上一家公司維護(hù)過多少自動化測試用例(看你簡歷上寫的UI/API/APP任意一個)吨岭。小于100的基本上上不了場面,如果后面的問題回答不上來峦树,你的定級就是初級自動化了辣辫。

Q8:

自動化用例,你們?nèi)美龍?zhí)行一次需要多少時間(考驗?zāi)憧蚣茉O(shè)計時是否考慮到執(zhí)行效率問題)魁巩?用例之間的關(guān)聯(lián)怎么解決急灭?調(diào)試單個用例或者選擇某幾個用例執(zhí)行你是怎么進(jìn)行的?數(shù)量100以內(nèi)的測試用例谷遂,如果用例維護(hù)量翻5倍(100以上double或者3倍)葬馋,你有什么方案優(yōu)化執(zhí)行時間和效率?

Q9:

如果被測試環(huán)境遷移了(例子:從本地環(huán)境遷移到阿里云機(jī)了)肾扰,你用例是否要大量修改測試數(shù)據(jù)畴嘶。(易維護(hù)性)

Q10:

編程語言問題:

Java一般問一些線程安全,數(shù)據(jù)類型的區(qū)別白对,設(shè)計模式等等問題掠廓,筆者是python,故只寫python常問的問題:

Python列表和元組除了可變不可變以外的區(qū)別甩恼?

Python列表和字典的區(qū)別?

Python生成器和迭代器的區(qū)別沉颂?

請描述多線程条摸,多進(jìn)程,協(xié)程其中之一的工作原理铸屉。(后續(xù)追問一個三者的區(qū)別钉蒲,主要是想聽聽你對這三者的優(yōu)缺點(diǎn)的了解程度)

請描述Python的垃圾回收機(jī)制以及內(nèi)存管理

Q11:

數(shù)據(jù)庫相關(guān)問題(太泛,從基礎(chǔ)理論到手寫語句彻坛,不寫了):

多刷度娘顷啼,多看基礎(chǔ)就是了踏枣。

Q12:

Linux基操

Q13:

網(wǎng)絡(luò)相關(guān)(http/https)

Q14:

對接CI、CD钙蒙,CI同時調(diào)用2個甚至多個環(huán)境的用例茵瀑,用例數(shù)據(jù)會不會錯亂。

Q15:

團(tuán)隊問題躬厌,這里重點(diǎn)描述一下马昨,入職的崗位除了大廠高級自動化工程師以外,都要求帶黑盒組一起進(jìn)行自動化扛施,所以團(tuán)隊問題會被著重提問:

編寫用例的復(fù)雜程度鸿捧?即一個用例需要多少行代碼?(其實(shí)聽到你回答多少行代碼的時候疙渣,你已經(jīng)降了一級匙奴,面試官更想要的是一個不懂代碼的小黑盒也能輕松上手。)

組內(nèi)用例的同步問題妄荔,如果N個組員同時編寫自動化用例饥脑,組員間的用例同步問題怎么解決。

如果使用你的自動化懦冰,組員需要具備哪些能力和知識灶轰?如果要維護(hù)你的自動化,維護(hù)人員又要具備什么能力刷钢?(主要是看你的自動化是否簡單易維護(hù)笋颤,面試官要的是哪怕你人走了,你的代碼依然能穩(wěn)定運(yùn)行内地,維護(hù)也盡可能簡單伴澄,而不是你一走,自動化就廢了阱缓,這樣的自動化毫無意義非凌,你面試的成功率也會大大降低,穩(wěn)定和易維護(hù)荆针,至少得滿足一個條件敞嗡。)

以上,就是筆者7月面試的問題航背,看完這些問題喉悴,你真的還了解自動化么?有甚者甚至與筆者爭論過使用工具做自動化玖媚,例如postman/jmeter箕肃,誠然,都可以做今魔,筆者只有一個問題勺像,你維護(hù)過下一家公司別人做的工具自動化么障贸?沒有的話,先去維護(hù)一次吟宦,體驗一下什么叫一個頭三個大的感覺篮洁,工具始終只是一個工具,筆者混跡在一些測試群里督函,每個月都能收到N個小白問這些工具要對數(shù)據(jù)進(jìn)行md5/rsa加密嘀粱,要base64編碼解碼,要怎么做辰狡?筆者只能說一句锋叨,自己寫代碼,隨后會遭到不少小白怒噴“我要是會寫代碼宛篇,我還用毛線工具”娃磺,筆者:呵呵。還有小白還在問叫倍,jme數(shù)據(jù)關(guān)聯(lián)怎么做偷卧?jme正則提取token怎么提取吆倦?連自己解決問題的能力都沒有听诸,更不用談自動化了。

對于自動化的想法和感受:

1蚕泽、UI自動化在很多小公司用于簡單的回歸是可以的晌梨,簡單的回歸其實(shí)單純寫幾個小腳本,和你用什么po+ut+關(guān)鍵字驅(qū)動之類的须妻,成本上沒有多大區(qū)別仔蝌,真正需要UI自動化的公司,起步也得有幾百人上千人荒吏,且滿足需要自動化的部分已經(jīng)足夠穩(wěn)定的場景敛惊,這種規(guī)模的自動化,大多數(shù)人涉及不到绰更,維護(hù)成本高瞧挤,受環(huán)境影響因素大也是很多公司放棄UI自動化的原因,大環(huán)境因素上动知,UI自動化已經(jīng)開始被AI自動化和圖片識別自動化代替了皿伺,各大廠內(nèi)部已經(jīng)開始流行AI自動化和基于圖片識別的自動化,例如網(wǎng)易開源的airtest盒粮,只需要截圖即可生成自動化用例,腳本的維護(hù)也越來越簡單奠滑。

2丹皱、App自動化和UI自動化差不多妒穴,app比ui多一個兼容問題(混合開發(fā)),維護(hù)同樣非常復(fù)雜摊崭,單純的selenium讼油,appium,ua2實(shí)現(xiàn)自動化呢簸,要解決的問題非常多矮台。

3、現(xiàn)在很多中小公司流行接口自動化根时,以及接口測試左移(在接口文檔出來之后瘦赫,后端開發(fā)完成之前,搭建mockserver蛤迎,實(shí)現(xiàn)前端聯(lián)調(diào))接口自動化的執(zhí)行速度快确虱,回歸效率高,是目前中小公司主流的喜愛替裆。但是接口測試要想做好校辩,對返回結(jié)果的斷言是個非常高的要求,設(shè)計人員的能力和知識決定了斷言的健壯性辆童,對于設(shè)計人員的能力要求相對較高宜咒。技術(shù)交流群(644956177)

4、大廠目前主要流行的是撥測把鉴、圖形識別故黑、AI,撥測即錄制和回放(很多小白看到這估計笑了纸镊,這不是早就被淘汰了么倍阐,筆者:呵呵,此操作非彼操作)逗威,筆者大概了解過阿里的doom系統(tǒng)(沒有仔細(xì)研究峰搪,能力有限,說的不對的請忽略)凯旭,通過中間件錄制線上的流量數(shù)據(jù)儲存起來概耻,在被測試環(huán)境進(jìn)行重放操作,以驗證本次修改是否對線上數(shù)據(jù)產(chǎn)生影響罐呼,這中間涉及非常多的技術(shù)實(shí)現(xiàn)鞠柄。圖像識別可以參考airtest,AI測試目前幾乎沒有流出嫉柴,測試之家里有一些理論文章可以參考厌杜。

5、性能自動化就不寫了,筆者的能力有限夯尽,連性能測試都不敢說會更何況性能自動化瞧壮。(要是會個工具隨便打個壓就算會的,當(dāng)我沒說匙握,打個壓看個報告啥的還是輕松的咆槽,代碼寫個性能腳本問題也不大,性能測試的精髓在于分析瓶頸圈纺、系統(tǒng)調(diào)優(yōu)秦忿。)

寫在最后,17年UI自動化剛興起的時候蛾娶,會個自動化腳本能評級到中級工程師灯谣,18年中級自動化需要自帶框架了,到了19年茫叭,會個自動化腳本連初級都算不上酬屉,用第三方框架的基本上要有成熟的方案了,19年的薪資高一點(diǎn)的測開崗位都要你會寫測試平臺了揍愁,19年測試平臺已經(jīng)開始流行了呐萨,技術(shù)行業(yè),更新就是這么快莽囤,不學(xué)習(xí)谬擦,不進(jìn)取,僅靠度娘那點(diǎn)基礎(chǔ)的教程朽缎,在20年21年22年只會越來越難走惨远,年紀(jì)越來越大,能力卻沒年輕的強(qiáng)话肖,競爭力越來越弱北秽,才是你跳槽漲薪的絆腳石。


總有一些工作年限久的人最筒,自以為自己經(jīng)驗老道而對工作年限低的人嗤之以鼻贺氓,筆者面過一個8年工作經(jīng)驗的人,只有一個總結(jié)床蜘,他的8年經(jīng)驗辙培,只是在重復(fù)他第一年的事,只不過做的更熟練了一點(diǎn)邢锯,但是他又沒能把第一年做的黑盒做到很好扬蕊,這是很多老油條的常事,筆者只能送一句丹擎,要么把黑盒做好尾抑,要么發(fā)展自己的能力,大中華的行業(yè)情況就是如此,往后N年蛮穿,好自為之庶骄。


上面這些是我的收集和整理毁渗,這些資料践磅,對于【軟件測試】的朋友來說應(yīng)該是最全面的倉庫,這個倉庫也陪伴我走過了最艱難的路程灸异,希望也能幫助到你

測試資源免費(fèi)領(lǐng)取~~

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末府适,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子肺樟,更是在濱河造成了極大的恐慌檐春,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,277評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件么伯,死亡現(xiàn)場離奇詭異疟暖,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)田柔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評論 3 393
  • 文/潘曉璐 我一進(jìn)店門俐巴,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人硬爆,你說我怎么就攤上這事欣舵。” “怎么了缀磕?”我有些...
    開封第一講書人閱讀 163,624評論 0 353
  • 文/不壞的土叔 我叫張陵缘圈,是天一觀的道長。 經(jīng)常有香客問我袜蚕,道長糟把,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,356評論 1 293
  • 正文 為了忘掉前任牲剃,我火速辦了婚禮遣疯,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘颠黎。我一直安慰自己另锋,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,402評論 6 392
  • 文/花漫 我一把揭開白布狭归。 她就那樣靜靜地躺著夭坪,像睡著了一般。 火紅的嫁衣襯著肌膚如雪过椎。 梳的紋絲不亂的頭發(fā)上室梅,一...
    開封第一講書人閱讀 51,292評論 1 301
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼亡鼠。 笑死赏殃,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的间涵。 我是一名探鬼主播仁热,決...
    沈念sama閱讀 40,135評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼勾哩!你這毒婦竟也來了抗蠢?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,992評論 0 275
  • 序言:老撾萬榮一對情侶失蹤思劳,失蹤者是張志新(化名)和其女友劉穎迅矛,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體潜叛,經(jīng)...
    沈念sama閱讀 45,429評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡秽褒,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,636評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了威兜。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片销斟。...
    茶點(diǎn)故事閱讀 39,785評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖牡属,靈堂內(nèi)的尸體忽然破棺而出票堵,到底是詐尸還是另有隱情,我是刑警寧澤逮栅,帶...
    沈念sama閱讀 35,492評論 5 345
  • 正文 年R本政府宣布悴势,位于F島的核電站,受9級特大地震影響措伐,放射性物質(zhì)發(fā)生泄漏特纤。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,092評論 3 328
  • 文/蒙蒙 一侥加、第九天 我趴在偏房一處隱蔽的房頂上張望捧存。 院中可真熱鬧,春花似錦担败、人聲如沸昔穴。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽吗货。三九已至,卻和暖如春狈网,著一層夾襖步出監(jiān)牢的瞬間宙搬,已是汗流浹背笨腥。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留勇垛,地道東北人脖母。 一個月前我還...
    沈念sama閱讀 47,891評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像闲孤,于是被迫代替她去往敵國和親谆级。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,713評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 背景 項目從2009年開始啟動崭放,采用的是TDD的開發(fā)方式哨苛。在這之后的過程中,團(tuán)隊做過各種嘗試去調(diào)整自動化測試的策略...
    ZhifangHu閱讀 526評論 1 2
  • 序 今天先聊聊如何搭建自動化測試框架币砂,主要會聊聊一些思路上的東西,從一個最簡單的demo到把一個框架該有的組件都搭...
    _夏兮閱讀 7,248評論 0 18
  • 背景 項目是基于Ruby on Rails開發(fā)的web程序玻侥,應(yīng)該說項目中的測試實(shí)踐是很好的决摧,具有高覆蓋率的單元測試...
    tuochao閱讀 3,714評論 0 3
  • 淺談AST(自動化測試)流程,歡迎大家多多指點(diǎn)凑兰,多提寶貴意見掌桩。 AST階段一:需求收集——分析自動化測試需求 舉行...
    hxhdip閱讀 995評論 0 1
  • 今天感恩節(jié)哎,感謝一直在我身邊的親朋好友姑食。感恩相遇波岛!感恩不離不棄。 中午開了第一次的黨會音半,身份的轉(zhuǎn)變要...
    迷月閃星情閱讀 10,564評論 0 11