4個(gè)實(shí)施持續(xù)測(cè)試的“最佳實(shí)踐”
開(kāi)發(fā)是一個(gè)有趣的大事件,因?yàn)槲覀兲幱趥鹘y(tǒng)測(cè)試與現(xiàn)代和持續(xù)測(cè)試之間的邊界,正在從一個(gè)大型的筒倉(cāng)式的結(jié)構(gòu)轉(zhuǎn)型到一個(gè)新的架構(gòu)。之前的組織架構(gòu)包含了開(kāi)發(fā)團(tuán)隊(duì)和集中測(cè)試團(tuán)隊(duì),瓶頸和延期不斷的在這兩個(gè)團(tuán)隊(duì)間交替進(jìn)行著。這種新架構(gòu)由小型,自管理和自給自足的團(tuán)隊(duì)組成,它們頻繁發(fā)布軟件,使用持續(xù)集成工具自動(dòng)化,并管理自己的構(gòu)建環(huán)境以最大限度地減少瓶頸。
但是如何從傳統(tǒng)到現(xiàn)代呢?這篇文章將涵蓋持續(xù)測(cè)試實(shí)施的4個(gè)最佳實(shí)踐。
1. 找到正確的持續(xù)測(cè)試工具
您的工具是您工作中最重要的組成部分之一。如果您的工具可以幫助您完成工作,提升您的能力并最大限度地提高您的工作效率,那么您將完成工作。如果他們成為一個(gè)障礙,不但不能工作,而且你會(huì)感到沮喪和停止嘗試。
因此,工具能夠建立敏捷及測(cè)試能力前置的通路,自動(dòng)化和協(xié)作方式的工具是成功進(jìn)入持續(xù)測(cè)試的關(guān)鍵。
所以請(qǐng)確保找到合適的工具,使您能夠持續(xù)開(kāi)發(fā),測(cè)試和持續(xù)分析。您可以查看我們撰寫的有關(guān)DevOps工具生態(tài)系統(tǒng)的博客系列,以獲取具體的想法,但一般來(lái)說(shuō),我們建議以下提示:
- 在購(gòu)買工具之前嘗試使用工具,讓您獲得他們的氛圍和感覺(jué),并了解他們的能力。如果您可以使用開(kāi)源工具,例如Apache JMeter進(jìn)行負(fù)載測(cè)試,請(qǐng)執(zhí)行此操作。開(kāi)源工具不斷發(fā)展,他們擁有豐富的支持社區(qū),并根據(jù)您的需求進(jìn)行開(kāi)發(fā),因?yàn)樽罱K您是客戶。
- 選擇與您正在使用的現(xiàn)有工具集成的工具。持續(xù)測(cè)試和持續(xù)集成是關(guān)于使事情一起工作,所以嘗試找到工具,輕松將自己融入您的工作環(huán)境。我們特別建議您找到與Jenkins集成的工具,這是一款精彩的開(kāi)源CI工具,還有GitHub(顯然)。
- 選擇具有自助服務(wù)平臺(tái)的工具。這樣,您可以立即輕松地修改和升級(jí)所需的任何東西,而無(wú)需等待其他人的決定。
- 找到具有豐富文檔的工具 - 如果您想快速入門,或者想要在任何工作時(shí)間找到答案,您需要使用該工具輕松訪問(wèn)具有答案的地方。
- 測(cè)試時(shí),確保您可以輕松設(shè)置通過(guò)失敗標(biāo)準(zhǔn)。持續(xù)測(cè)試是關(guān)于立即確定事情是否正常,所以請(qǐng)確保您可以輕松地進(jìn)行設(shè)置。
2. 思考“自動(dòng)化”
如果您希望測(cè)試快速,順利,那么嘗試自動(dòng)化您可以做的任何事情。這也節(jié)省了你的時(shí)間,使你的工作更有趣,因?yàn)槟憧赡茏詣?dòng)化了沉悶和重復(fù)性的工作,而不是令人興奮和創(chuàng)造性的部分。
我們建議您進(jìn)入自動(dòng)化模式。必須確保系統(tǒng)每天穩(wěn)定?嘗試夜間自動(dòng)化測(cè)試吧。必須確保代碼中的每個(gè)更改都不會(huì)影響您的產(chǎn)品?嘗試自動(dòng)化每個(gè)構(gòu)建吧。在與人類交流之前,每天早晨需要喝咖啡嗎?你也可以自動(dòng)化。
越來(lái)越多的工具可以實(shí)現(xiàn)自動(dòng)化。 Taurus是一款開(kāi)源自動(dòng)化測(cè)試工具,可自動(dòng)執(zhí)行JMeter,Gatling,Locust和Tsung等所有開(kāi)源負(fù)載測(cè)試工具,以及功能測(cè)試Selenium。它還集成了CI自動(dòng)化工具Jenkins和BlazeMeter。
3. 協(xié)作
將開(kāi)發(fā)架構(gòu)更改為更小的原子團(tuán)隊(duì)對(duì)于使進(jìn)程變得敏捷至關(guān)重要。但不要忘記,這些團(tuán)隊(duì)中的每一個(gè)都是較大產(chǎn)品的組成部分,而且所有團(tuán)隊(duì)都需要一起合作。
因此,在功能團(tuán)隊(duì)之間共享測(cè)試和資產(chǎn),使報(bào)告易于訪問(wèn)和在線共享(而不是電子郵件!),盡可能地開(kāi)放角色和權(quán)限,并使用像Slack和HipChat這樣的webhook在測(cè)試開(kāi)始和結(jié)束時(shí)通知用戶。要了解有關(guān)在開(kāi)發(fā)過(guò)程中結(jié)合Slack警報(bào)的更多信息,請(qǐng)參閱此處。
更易于反復(fù)消化信息的是人們之間的共享,更多的想法和合作將會(huì)來(lái)臨。越多的開(kāi)發(fā)者覺(jué)得他們對(duì)更多的部分負(fù)責(zé),他們就會(huì)有越多的合作來(lái)推動(dòng)產(chǎn)品的發(fā)展。
4. 定義和顯示結(jié)果
所以你有了最好的工具,一切都是自動(dòng)化的,你正在分享你的工作,那現(xiàn)在呢?現(xiàn)在是深度研究結(jié)果的時(shí)候了。結(jié)果將會(huì)顯示您的代碼和產(chǎn)品是否在運(yùn)轉(zhuǎn),并且顯示當(dāng)前與要完成的工作之間的差距。
首先,定義可量化的KPI 。 這些關(guān)鍵績(jī)效指標(biāo)應(yīng)由產(chǎn)品確定,并反映產(chǎn)品的業(yè)務(wù)目標(biāo)和公司的業(yè)務(wù)計(jì)劃。 它們可以包括測(cè)試覆蓋率,通過(guò)失敗構(gòu)建的數(shù)量,平均響應(yīng)時(shí)間等。
其次,創(chuàng)建跟蹤這些KPI的儀表盤。 儀表板應(yīng)顯示每個(gè)KPI和他們的基線,這些信息隨時(shí)間變化而變化。 只要你給它足夠的時(shí)間,任何一個(gè)你掃描到的特殊的彈出,儀表盤都能夠給你直觀的深入的數(shù)據(jù)顯示。
第三,公開(kāi)顯示結(jié)果,以創(chuàng)建透明度,并輕松識(shí)別測(cè)試覆蓋范圍的差距。 在走廊或隔間房間的大型顯示器上顯示結(jié)果是獲得更多工程師采納的關(guān)鍵,因?yàn)槟趧?dòng)員大家時(shí)刻準(zhǔn)備著并修復(fù)需要修復(fù)的東西,而不是等待。
持續(xù)測(cè)試需要改變您的思維方式,但是通過(guò)正確的工具和環(huán)境,您可以順利瀏覽更快,更有趣的開(kāi)發(fā)。 使用BlazeMeter進(jìn)行測(cè)試是持續(xù)測(cè)試方向的巨大飛躍。 要查看它是如何工作的, 請(qǐng)求演示 。 您也可以立即開(kāi)始測(cè)試,將jmx文件或URL放在頁(yè)面頂部的框中,您的測(cè)試將在幾分鐘內(nèi)開(kāi)始。
【本文是51CTO專欄作者“王津銀”的原創(chuàng)稿件,轉(zhuǎn)載請(qǐng)注明出處】