軟件測(cè)試工程師目前正在成為IT行業(yè)中的一個(gè)新亮點(diǎn),因其從業(yè)人員薪水高、人員需求增加快而廣受關(guān)注,該行業(yè)未來(lái)良好的發(fā)展前景也受到肯定。據(jù)國(guó)家權(quán)威部門統(tǒng)計(jì),中國(guó)軟件人才缺口中30%為軟件測(cè)試人才。
軟件產(chǎn)業(yè)是國(guó)家鼓勵(lì)發(fā)展的朝陽(yáng)產(chǎn)業(yè),軟件產(chǎn)業(yè)要發(fā)展,提高軟件質(zhì)量勢(shì)所必然,這樣就產(chǎn)生了對(duì)軟件測(cè)試工程師的大量需求。在IT業(yè)處于發(fā)展的初級(jí)階段時(shí),由于大多數(shù)軟件比較簡(jiǎn)單,測(cè)試工作也不復(fù)雜,往往是軟件開發(fā)企業(yè)在開發(fā)完成后進(jìn)行一下簡(jiǎn)單的檢測(cè)就可以了。但在IT業(yè)發(fā)展到一個(gè)高級(jí)階段后,系統(tǒng)越來(lái)越精密,軟件也越來(lái)越復(fù)雜,影響的范圍也不斷擴(kuò)大。因此,該階段開發(fā)的軟件必須進(jìn)行十分嚴(yán)格的測(cè)試。否則,不僅會(huì)引發(fā)企業(yè)銷售收入下降和運(yùn)營(yíng)成本的增加,甚至?xí)屍髽I(yè)承擔(dān)法律責(zé)任。尤其是金融、電信、銀行等系統(tǒng)趨于全國(guó)集中,風(fēng)險(xiǎn)波及面大,業(yè)務(wù)影響廣泛的行業(yè),其產(chǎn)生的后果更是不堪設(shè)想。
為什么要寫這本書
自己學(xué)習(xí)很好,為什么找不到好的工作?為什么我精心準(zhǔn)備了面試,又屢屢失?為什么我天天熬夜學(xué)習(xí),還是沒(méi)有成效,依然找不到喜歡的工作?很多五花八門的各種疑問(wèn),筆者經(jīng)過(guò)深入了解后發(fā)現(xiàn),大部分是“紙上談兵”式的學(xué)習(xí)與不善于總結(jié)、不善于分析問(wèn)題所造成的。本書總結(jié)了軟件測(cè)試技術(shù)的核心知識(shí)與企業(yè)面試真題,以及面試技巧,對(duì)于求職者是一本寶典。
本書特色
本書根據(jù)軟件測(cè)試工程師所應(yīng)具備的職業(yè)素質(zhì)與企業(yè)面試真題展開。
專業(yè)技能
計(jì)算機(jī)領(lǐng)域的專業(yè)技能是測(cè)試工程師必備的一項(xiàng)素質(zhì),是做好測(cè)試工作的前提條件。盡管沒(méi)有任何IT背景的人也可以從事測(cè)試工作,但是要想成為一名獲得更大發(fā)展空間或者持久競(jìng)爭(zhēng)力的測(cè)試工程師,計(jì)算機(jī)專業(yè)技能是必不可少的。
專業(yè)技能主要包含3個(gè)方面: 測(cè)試專業(yè)技能,軟件編程技能,操作系統(tǒng)、數(shù)據(jù)庫(kù)、自動(dòng)化測(cè)試、手機(jī)測(cè)試、性能測(cè)試、常用工具的使用。
行業(yè)知識(shí)
行業(yè)主要指測(cè)試人員所在企業(yè)涉及的行業(yè)領(lǐng)域,大部分IT企業(yè)從事銀行、互聯(lián)網(wǎng)、電子商務(wù)等行業(yè)領(lǐng)域的產(chǎn)品測(cè)試。行業(yè)知識(shí)即業(yè)務(wù)知識(shí),是測(cè)試人員做好測(cè)試工作的又一個(gè)前提條件,只有深入地了解產(chǎn)品的業(yè)務(wù)流程,才可以判斷出開發(fā)人員實(shí)現(xiàn)的產(chǎn)品功能是否正確。行業(yè)知識(shí)與工作經(jīng)驗(yàn)有一定關(guān)系,需要通過(guò)時(shí)間進(jìn)行積累。一個(gè)優(yōu)秀的軟件測(cè)試工程師除了具備“專業(yè)技能、行業(yè)知識(shí)”外,還必須具備相應(yīng)的交流技巧、組織技能、實(shí)踐技能和態(tài)度(除了技術(shù)水平,需要理解和采取適當(dāng)?shù)膽B(tài)度去做軟件測(cè)試)。
個(gè)人素養(yǎng)
一名優(yōu)秀的測(cè)試工程師,首先要對(duì)測(cè)試工作有興趣。測(cè)試工作很多時(shí)候顯得有些枯燥,因此熱愛測(cè)試工作,才更容易做好測(cè)試工作。除了具有前面的專業(yè)技能和行業(yè)知識(shí)外,測(cè)試人員應(yīng)該具有一些基本的個(gè)人素養(yǎng),即下面的“五心”。
專心: 測(cè)試人員在執(zhí)行測(cè)試任務(wù)的時(shí)候要專心,不可一心二用。經(jīng)驗(yàn)表明,高度集中精神不但能夠提高效率,還能發(fā)現(xiàn)更多的軟件缺陷,業(yè)績(jī)最棒的往往是團(tuán)隊(duì)中做事精力最集中的那些成員。
細(xì)心: 執(zhí)行測(cè)試工作時(shí)要細(xì)心,認(rèn)真執(zhí)行測(cè)試,不可以忽略一些細(xì)節(jié)。某些缺陷如果不細(xì)心很難發(fā)現(xiàn),例如一些界面的樣式、文字等。
耐心: 很多測(cè)試工作有時(shí)候顯得非?菰,需要很大的耐心才可以做好。如果比較浮躁,就不能做到“專心”和“細(xì)心”,這將讓很多軟件缺陷從你眼前逃過(guò)。
責(zé)任心: 責(zé)任心是做好工作必備的素質(zhì)之一,測(cè)試工程師更應(yīng)該將其發(fā)揚(yáng)光大。如果測(cè)試中沒(méi)有盡到責(zé)任,甚至敷衍了事,把測(cè)試工作“交給”用戶來(lái)完成,很可能造成非常嚴(yán)重的后果。
自信心: 自信心是現(xiàn)在多數(shù)測(cè)試工程師缺少的一項(xiàng)素質(zhì),尤其在面對(duì)需要編寫測(cè)試代碼等工作的時(shí)候,往往認(rèn)為自己做不到。要想獲得更好的職業(yè)發(fā)展,測(cè)試工程師們應(yīng)該努力學(xué)習(xí),建立“能解決一切測(cè)試問(wèn)題”的信心。
“五心”只是做好測(cè)試工作的基本要求,測(cè)試人員應(yīng)該具有的素質(zhì)還很多,例如測(cè)試人員不但要具有團(tuán)隊(duì)合作精神,而且應(yīng)該學(xué)會(huì)寬容待人,學(xué)會(huì)去理解開發(fā)人員,同時(shí)也要尊重開發(fā)人員的勞動(dòng)成果——開發(fā)出來(lái)的產(chǎn)品。軟件測(cè)試工程師作為軟件質(zhì)量的把關(guān)者,其職能在于保證交付到客戶手中的軟件可靠好用,運(yùn)行暢通無(wú)阻。從產(chǎn)品定義到產(chǎn)品開發(fā)再到產(chǎn)品維護(hù),都離不開軟件測(cè)試。由于軟件測(cè)試的重要性是近兩年才被充分認(rèn)識(shí)到的,很多高校教育和企業(yè)培養(yǎng)還沒(méi)有跟上,致使軟件測(cè)試人才嚴(yán)重供不應(yīng)求,出現(xiàn)跑步上崗、快速提升的狀態(tài),薪資也逐步走高。
本書由筆者與于晶教育講師團(tuán)隊(duì)合力編著,傾注了編者的努力。由于筆者水平有限,書中難免存在疏漏,敬請(qǐng)讀者批評(píng)指正。
于晶張丹
2020年3月
第1章Linux系統(tǒng)核心技術(shù)
1.1常用命令
1.2在軟件測(cè)試中的應(yīng)用
第2章MySQL核心技術(shù)
2.1面試常問(wèn)技術(shù)
2.2在軟件測(cè)試中的應(yīng)用
2.3MySQL在企業(yè)中的應(yīng)用
第3章軟件測(cè)試核心理論
3.1軟件測(cè)試周期
3.2軟件測(cè)試方法
3.3功能測(cè)試流程
3.4性能測(cè)試流程
3.5測(cè)試計(jì)劃內(nèi)容
3.6測(cè)試報(bào)告內(nèi)容
3.7測(cè)試用例設(shè)計(jì)
3.8接口測(cè)試流程
3.9軟件需求分析
3.10軟件測(cè)試的重要理論
第4章常用工具企業(yè)案例
4.1Fiddler工具的用途與企業(yè)應(yīng)用案例
4.1.1HTTPS在企業(yè)中的應(yīng)用
4.1.2編碼工具使用
4.1.3查找過(guò)濾
4.1.4會(huì)話過(guò)濾
4.1.5模塊
4.1.6Hosts主機(jī)
4.1.7Client Process
4.1.8Request Headers
4.1.9Breakpoints
4.1.10Response Status Code
4.1.11Response Type and Size
4.1.12Response Headers
4.1.13自定義請(qǐng)求
4.1.14模擬GET請(qǐng)求
4.1.15模擬POST請(qǐng)求
4.1.16模擬弱網(wǎng)
4.1.17重復(fù)請(qǐng)求
4.1.18手機(jī)抓包
4.1.19配置 HOST
4.2Charles工具的用途
4.2.1過(guò)濾網(wǎng)絡(luò)請(qǐng)求
4.2.2模擬慢速網(wǎng)絡(luò)
4.2.3截取移動(dòng)設(shè)備中的HTTPS通信信息
4.2.4修改服務(wù)器返回內(nèi)容
4.2.5Map功能
4.2.6給服務(wù)器做壓力測(cè)試
4.2.7截取HTTPS通信信息
4.2.8Rewrite功能
4.3Wireshark工具的用途與企業(yè)案例
4.3.1抓取報(bào)文
4.3.2色彩標(biāo)識(shí)
4.3.3報(bào)文樣本
4.3.4過(guò)濾報(bào)文
4.3.5檢查報(bào)文
4.3.6TCP連接
4.3.7HTTP協(xié)議
4.3.8IO Graphs
4.43個(gè)抓包工具的優(yōu)缺點(diǎn)對(duì)比
4.5禪道工具的用途與企業(yè)應(yīng)用
4.5.1禪道基本使用流程
4.5.2設(shè)置部門結(jié)構(gòu)
4.5.3添加用戶
4.5.4權(quán)限
4.5.5產(chǎn)品管理
4.5.6Bug管理
4.5.7用例管理
第5章接口自動(dòng)化核心技術(shù)
5.1JMeter工具的作用
5.2JMeter工具在企業(yè)中的應(yīng)用
5.3利用JMeter測(cè)試接口
5.4接口測(cè)試中如何分析定位Bug
5.5Postman基礎(chǔ)使用
第6章性能測(cè)試核心技術(shù)
6.1LoadRunner工具的用途
6.2LoadRunner使用流程
6.3LoadRunner與JMeter的區(qū)別
6.4性能測(cè)試的企業(yè)案例
6.5常用LR函數(shù)
第7章手機(jī)測(cè)試核心技術(shù)
7.1adb工具的用途與常用命令
7.2monkey工具的用途與企業(yè)應(yīng)用
7.3ADM(Android Device Monitor) DDMS工具的用途與企業(yè)應(yīng)用
7.4AndroidStudio監(jiān)控工具
7.5騰訊GT工具的用途與企業(yè)應(yīng)用
第8章Java面試題
第9章Selenium 面試題
第10章各大行業(yè)的企業(yè)面試真題
10.1騰訊
10.2網(wǎng)易
10.3搜狗
10.4易趣網(wǎng)
10.5今日頭條
10.6擇居網(wǎng)
10.7軟通動(dòng)力
10.8悠活科技
10.9格瓦拉
10.10博彥科技
10.11火山
10.12百度
10.13其他互聯(lián)網(wǎng)公司面試題
10.14銀行面試題
10.15黃金錢包
第11章面試技巧與非技術(shù)面試題
11.1面試技巧
11.2非技術(shù)面試題