這是我購(gòu)買(mǎi)的"極客時(shí)間"上的一套課程的筆記,總共52講泰佳,定期對(duì)其中的內(nèi)容做一筆記,鞏固學(xué)習(xí)內(nèi)容尘吗。
10 軟件測(cè)試工程師需要掌握的非測(cè)試知識(shí)有哪些逝她?
開(kāi)發(fā)工程師通常是"深度遍歷",關(guān)注的是"點(diǎn)"睬捶;而測(cè)試工程師通常是"廣度遍歷"黔宛,關(guān)注的是"面"。
- 小到 Linux/Unix/Windows 操作系統(tǒng)的基礎(chǔ)知識(shí)擒贸,Oracle/MySQL 等傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)技術(shù)臀晃,NoSQL 非關(guān)系型數(shù)據(jù)庫(kù)技術(shù),中間件技術(shù)介劫,Shell/Python 腳本開(kāi)發(fā)徽惋,版本管理工具與策略,CI/CD 流水線(xiàn)設(shè)計(jì)蜕猫,F(xiàn)5 負(fù)載均衡技術(shù)寂曹,F(xiàn)iddler/Wireshark/Tcpdump 等抓包工具,瀏覽器 Developer Tool 等回右;
- 大到網(wǎng)站架構(gòu)設(shè)計(jì)隆圆,容器技術(shù),微服務(wù)架構(gòu)翔烁,服務(wù)網(wǎng)格(Service Mesh)渺氧,DevOps,云計(jì)算蹬屹,大數(shù)據(jù)侣背,人工智能和區(qū)塊鏈技術(shù)等。
下面挑選幾個(gè)比較重要慨默,而又符合當(dāng)前技術(shù)趨勢(shì)的關(guān)鍵知識(shí)點(diǎn)贩耐。
網(wǎng)站架構(gòu)的核心知識(shí)
想要做好互聯(lián)網(wǎng)產(chǎn)品的如下測(cè)試,就要掌握網(wǎng)站的架構(gòu)知識(shí):
- 性能測(cè)試
- 穩(wěn)定性測(cè)試
- 全鏈路壓測(cè)
- 故障切換測(cè)試
- 動(dòng)態(tài)集群容量伸縮測(cè)試
- 服務(wù)降級(jí)測(cè)試
- 安全滲透測(cè)試
- 比如厦取,如果你不清楚 Memcached 這類(lèi)分布式緩存集群的應(yīng)用場(chǎng)景和基本原理潮太,如果你不清楚緩存擊穿、緩存雪崩、緩存預(yù)熱铡买、緩存集群擴(kuò)容局限性等問(wèn)題更鲁,你就設(shè)計(jì)不出針對(duì)緩存系統(tǒng)特有問(wèn)題的測(cè)試用例;
- 再比如奇钞,如果你對(duì)網(wǎng)站的可伸縮性架構(gòu)設(shè)計(jì)不了解澡为,不清楚應(yīng)用服務(wù)器的各種負(fù)載均衡實(shí)現(xiàn)的基本原理,不了解數(shù)據(jù)庫(kù)的讀寫(xiě)分離技術(shù)景埃,你就無(wú)法完成諸如故障切換媒至、動(dòng)態(tài)集群容量伸縮、服務(wù)降級(jí)等相關(guān)的測(cè)試纠亚,同時(shí)對(duì)于性能測(cè)試和全鏈路壓測(cè)過(guò)程中可能遇到的各種瓶頸塘慕,也會(huì)很難定位和調(diào)整。
容器技術(shù)
與傳統(tǒng)的虛擬機(jī)相比蒂胞,容器技術(shù)在輕量化程度图呢、資源占用、運(yùn)行效率等方面具有壓倒性的優(yōu)勢(shì)骗随。
作為新時(shí)代的測(cè)試開(kāi)發(fā)工程師蛤织,必須像熟練使用VMware一樣,掌握Docker和Kubernetes的原理和使用方法鸿染。
學(xué)習(xí)路徑
那么推薦的學(xué)習(xí)資料呢指蚜,是Docker官網(wǎng)的教程。
云計(jì)算技術(shù)
- 很多企業(yè)涨椒,尤其是互聯(lián)網(wǎng)企業(yè)都在嘗試"上云"摊鸡。
必須理解服務(wù)在云端部署的技術(shù)細(xì)節(jié),才能更好地完成測(cè)試任務(wù)蚕冬。
- 測(cè)試基礎(chǔ)服務(wù)作為提供測(cè)試服務(wù)的基礎(chǔ)設(shè)施免猾,比如測(cè)試執(zhí)行環(huán)境服務(wù) (Test Execution Service) 和測(cè)試數(shù)據(jù)準(zhǔn)備服務(wù) (Test Data Service) 等,也在逐漸走向云端囤热。
學(xué)習(xí)路徑
可以嘗試用云服務(wù)去部署自己的應(yīng)用猎提,同時(shí)還可以結(jié)合云平臺(tái)提供的各類(lèi)服務(wù)和你的應(yīng)用做集成。
更進(jìn)一步旁蔼,可以嘗試在云端接力自己的Selenium Gird集群锨苏。
理解了Docker的基本概念以及對(duì)應(yīng)云平臺(tái)的使用方法,就可以再短時(shí)間內(nèi)快速搭建起這樣的Selenium集群棺聊。
DevOps思維
DevOps的具體表現(xiàn)形式可以是工具伞租、方法和流水線(xiàn),但其更深層次的內(nèi)涵還是在思想方法限佩,以敏捷和精益為核心葵诈,通過(guò)發(fā)現(xiàn)問(wèn)題,以系統(tǒng)性的方法或者工具來(lái)解決問(wèn)題,從而實(shí)現(xiàn)持續(xù)改進(jìn)驯击。
學(xué)習(xí)路徑
對(duì)于DevOps的學(xué)習(xí)路徑,可以從深入掌握J(rèn)enkins之類(lèi)的工具開(kāi)始耐亏,到熟練應(yīng)用和組合各種plugin來(lái)完成靈活高效的流水線(xiàn)搭建徊都,之后再將更多的工具逐漸集成到流水線(xiàn)中以完成更多的任務(wù)。
前端開(kāi)發(fā)技術(shù)
如果能夠掌握前端開(kāi)發(fā)技術(shù)广辰,也就意味著可以更高效地做前端的測(cè)試暇矫,更容易發(fā)現(xiàn)潛在缺陷。
同時(shí)择吊,還可以自己構(gòu)建測(cè)試頁(yè)面李根,來(lái)完成各類(lèi)前端組件的精細(xì)化測(cè)試,大大提高測(cè)試覆蓋率和效率几睛。
學(xué)習(xí)路徑
首先需要掌握最基本的JavaScript房轿、CSS、JQuery和HTML5等知識(shí)所森,然后再去學(xué)習(xí)一些逐流的前端開(kāi)發(fā)框架囱持,比如Angular.js, Backbone.js等。當(dāng)然現(xiàn)在Node.js的生態(tài)圈非常發(fā)達(dá)焕济,如果能夠掌握纷妆,很多東西實(shí)現(xiàn)起來(lái)都可以得心應(yīng)手。
推薦下載一些樣例代碼進(jìn)行學(xué)習(xí)晴弃,同時(shí)學(xué)習(xí)使用腳手架從無(wú)到有去建立自己的前端應(yīng)用掩幢。
【心得】這些知識(shí)零零散散的也了解一些,但是作者分類(lèi)總結(jié)的非常贊上鞠!比自己零散的看起來(lái)际邻,要更有感覺(jué)一些。