自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

去測試化真的可行嗎?

開發(fā)
對(duì)于追求高質(zhì)量的項(xiàng)目,如果業(yè)務(wù)和開發(fā)人員沒有測試與質(zhì)量相關(guān)的專業(yè)技能,或者業(yè)務(wù)和開發(fā)人員沒有時(shí)間或不愿意進(jìn)行測試與質(zhì)量相關(guān)的工作,那么團(tuán)隊(duì)就需要專業(yè)的QA來幫助解決這些約束條件。

作者 | 劉冉

當(dāng)前業(yè)界對(duì)于軟件測試和質(zhì)量相關(guān)的討論非常廣泛,各種不同的聲音此起彼伏。其中包括質(zhì)疑測試人員的必要性、去測試人員化、強(qiáng)調(diào)測試技術(shù)化和工程化、探討測試與質(zhì)量的協(xié)同作用、討論敏捷測試、持續(xù)測試以及全程自動(dòng)化測試等等。

這些討論表明,測試工作和專業(yè)測試人員已經(jīng)陷入一個(gè)廣泛而深入的漩渦中。

然而,只要一個(gè)項(xiàng)目追求高質(zhì)量,就需要實(shí)施大量系統(tǒng)化的專業(yè)測試和質(zhì)量工作。這些大量系統(tǒng)化的測試與質(zhì)量工作需要專業(yè)知識(shí)的人員來完成。

盡管一些互聯(lián)網(wǎng)公司或某些項(xiàng)目聲稱在沒有專業(yè)QA的情況下成功交付,但這是建立在特定前提條件下的。例如:

  • 項(xiàng)目規(guī)模較小,團(tuán)隊(duì)的BA和Dev具備專業(yè)的測試和質(zhì)量能力,他們?cè)敢獬袚?dān)測試和質(zhì)量相關(guān)的工作,且有足夠的時(shí)間資源;
  • 或者項(xiàng)目對(duì)質(zhì)量要求不高,允許在存在問題和風(fēng)險(xiǎn)的情況下上線;
  • 或者項(xiàng)目已經(jīng)非常成熟,測試、質(zhì)量和基礎(chǔ)設(shè)施工作得到有效執(zhí)行,只需要進(jìn)行一些維護(hù)和擴(kuò)展工作;
  • 或者項(xiàng)目仍處于探索和實(shí)驗(yàn)階段;
  • ...

然而,對(duì)于追求高質(zhì)量的項(xiàng)目,如果業(yè)務(wù)和開發(fā)人員沒有測試與質(zhì)量相關(guān)的專業(yè)技能,或者業(yè)務(wù)和開發(fā)人員沒有時(shí)間或不愿意進(jìn)行測試與質(zhì)量相關(guān)的工作,那么團(tuán)隊(duì)就需要專業(yè)的QA來幫助解決這些約束條件。

每種角色都有側(cè)重的技能

在項(xiàng)目交付過程中,主要的參與人員通常包括項(xiàng)目經(jīng)理(PM)、用戶體驗(yàn)設(shè)計(jì)師(UX)、業(yè)務(wù)分析師(BA)、開發(fā)人員(DEV)、質(zhì)量保證人員(QA)等核心角色。在某些特殊項(xiàng)目中,還可能會(huì)涉及到其他角色如DevOps等。

敏捷測試和質(zhì)量內(nèi)建方法論決定了團(tuán)隊(duì)中每個(gè)角色都對(duì)質(zhì)量負(fù)有責(zé)任。然而,具體到實(shí)際的交付工作中,每個(gè)角色都有其專業(yè)性和側(cè)重點(diǎn)。例如,某些專業(yè)技能(如測試分析與設(shè)計(jì)、性能測試等)在短時(shí)間內(nèi)其他角色很難學(xué)習(xí)和掌握,甚至他們可能不愿意學(xué)習(xí);而某些具體工作(如編寫測試用例、執(zhí)行測試、編寫自動(dòng)化測試等)可能是其他角色不愿意承擔(dān)的。

在團(tuán)隊(duì)協(xié)作中,合理分配任務(wù)和角色的專業(yè)性是至關(guān)重要的。每個(gè)角色應(yīng)發(fā)揮其專業(yè)技能,以確保交付的質(zhì)量和可靠性。通過充分利用各個(gè)角色的專長,可以實(shí)現(xiàn)協(xié)同合作和有效的交付過程。團(tuán)隊(duì)成員應(yīng)相互理解和尊重彼此的專業(yè)領(lǐng)域,并在合適的情況下進(jìn)行協(xié)作和知識(shí)分享,以提高整體交付質(zhì)量。

如果一個(gè)項(xiàng)目希望建立良好的團(tuán)隊(duì)氛圍并提高產(chǎn)出,每個(gè)角色都應(yīng)愿意并能夠高效地運(yùn)用自己所掌握的技能。然而,不同的技能都需要足夠的時(shí)間來學(xué)習(xí)和磨練,因此一個(gè)角色很難有效地掌握大量不同角色所需的技能。

畢竟,大家的時(shí)間都是有限的,一般人都會(huì)在不同技能之間做出權(quán)衡。并且每個(gè)人應(yīng)專注于自己的領(lǐng)域,并在該領(lǐng)域內(nèi)精益求精。通過發(fā)揮各個(gè)角色的專業(yè)性,團(tuán)隊(duì)能夠形成互補(bǔ),從而提高整體的效能和成果。團(tuán)隊(duì)成員應(yīng)該相互支持和合作,尊重彼此的專業(yè)領(lǐng)域,并在需要時(shí)進(jìn)行知識(shí)共享和協(xié)作。

對(duì)于QA這個(gè)角色來說,我們很多項(xiàng)目都在嘗試減少或去掉QA,因?yàn)檫@些項(xiàng)目滿足之前提到的條件。然而,如果一個(gè)項(xiàng)目不符合這些條件,我建議一定要配備專業(yè)的QA人員。

QA 能力和數(shù)量要根據(jù)項(xiàng)目要求來配備

根據(jù)團(tuán)隊(duì)成員的能力、項(xiàng)目類型、規(guī)模和質(zhì)量要求的不同,需要的QA人員的能力級(jí)別和數(shù)量會(huì)有所變化。

考慮到問題的復(fù)雜性,我們可以簡化條件,以一個(gè)中等規(guī)模的團(tuán)隊(duì)(約10-20人)、全新開發(fā)的保險(xiǎn)項(xiàng)目為例。該項(xiàng)目無法在交付前進(jìn)行線上真實(shí)用戶測試,質(zhì)量要求高,開發(fā)周期為1年,需求在開發(fā)過程中持續(xù)確定并略有變化。項(xiàng)目涉及各種角色,包括項(xiàng)目經(jīng)理(PM)、產(chǎn)品負(fù)責(zé)人(PO)、用戶體驗(yàn)設(shè)計(jì)師(UX)、業(yè)務(wù)分析師(BA)、開發(fā)人員(DEV)和質(zhì)量保證人員(QA)。其中,QA角色至少需要一名高級(jí)QA或領(lǐng)導(dǎo)級(jí)QA,其他QA可以是普通級(jí)別的。

在這樣的約束條件下,如果希望QA能夠全面實(shí)施敏捷測試和質(zhì)量內(nèi)建的相關(guān)工作,包括高覆蓋率的功能自動(dòng)化測試,QA與Dev的比例應(yīng)大致為1:3。隨著比例的減少,即QA資源的減少,相關(guān)工作的內(nèi)容也需要相應(yīng)減少,或由其他角色承擔(dān)??蓽p少的工作包括全面深入的探索性測試、性能測試、安全測試以及一些不重要的自動(dòng)化測試開發(fā)等。

當(dāng)比例達(dá)到大約1:5時(shí),就達(dá)到了自動(dòng)化功能測試的極限。隨著比例進(jìn)一步減少,自動(dòng)化功能測試的開發(fā)工作也將減少。當(dāng)比例降至1:10時(shí),QA人員幾乎沒有時(shí)間來進(jìn)行自動(dòng)化功能測試,因?yàn)槌R?guī)測試和與質(zhì)量相關(guān)的工作已占據(jù)了絕大部分時(shí)間?;旧纤凶詣?dòng)化功能測試相關(guān)的工作都需要由開發(fā)人員來實(shí)施。然而,某些特定測試如性能測試仍需要QA人員來執(zhí)行,盡管只能實(shí)施主要的性能測試用例,無法全面執(zhí)行全量的性能測試。(以上比例是基于多年工作經(jīng)驗(yàn)總結(jié)得出的)

日常工作中,主要且工作量最大的任務(wù)包括測試策略和測試架構(gòu)的設(shè)計(jì)和實(shí)施、測試流程的實(shí)施和管理、測試分析與測試設(shè)計(jì)、測試用例的執(zhí)行(包括手動(dòng)和自動(dòng)化)。對(duì)于大型團(tuán)隊(duì),還需要為團(tuán)隊(duì)提供測試賦能,甚至建立質(zhì)量體系。其中我們共同編寫的《Thoughtworks 質(zhì)量體系白皮書》以及我寫的《Thoughtworks的敏捷測試實(shí)踐》都非常全面地介紹了敏捷團(tuán)隊(duì)中QA所需的技能和日常的工作內(nèi)容)

對(duì)于一個(gè)以復(fù)雜度為主的業(yè)務(wù)系統(tǒng),如果團(tuán)隊(duì)沒有足夠的人力資源來實(shí)施自動(dòng)化測試,可以考慮引入外部資源來執(zhí)行手動(dòng)功能測試。然而,測試分析和測試設(shè)計(jì)的工作通常需要由內(nèi)部員工來完成。在一般團(tuán)隊(duì)中,最好由QA承擔(dān)該角色,也可以由具備相同能力的BA和DEV來擔(dān)任。例如,在某大型通信廠商中,許多項(xiàng)目的測試分析和測試用例設(shè)計(jì)工作由高級(jí)系統(tǒng)工程師完成,而不是測試與質(zhì)量人員。

如果更改這些限制條件,需要對(duì)QA人員的比例進(jìn)行一定的調(diào)整,但是最重要的是項(xiàng)目的質(zhì)量要求。只要項(xiàng)目的質(zhì)量要求高,就必須擁有足夠的時(shí)間和專業(yè)工作來進(jìn)行測試和質(zhì)量相關(guān)的工作,最好是由專業(yè)的QA人員來實(shí)施。如果沒有專業(yè)的QA人員,則需要具備足夠?qū)I(yè)技能的其他角色兼職,但是兼職的這個(gè)人其實(shí)就是一個(gè)QA。

QA 的培養(yǎng)與管理

在沒有專門的QA部門但實(shí)施敏捷測試的公司中,培養(yǎng)初級(jí)QA人員一直是一個(gè)重要的挑戰(zhàn)。由于沒有獨(dú)立的QA團(tuán)隊(duì),每個(gè)QA成員分散在不同的團(tuán)隊(duì)中工作。如果這些QA已經(jīng)具備足夠的專業(yè)技能和獨(dú)立工作能力,他們通常能夠很好地完成任務(wù)。然而,對(duì)于初級(jí)QA人員來說,他們往往缺乏足夠的專業(yè)技能和獨(dú)立工作的能力。這樣的工作環(huán)境常常使他們感到沮喪和面臨困境,甚至可能放棄從事QA工作。

如果我們能夠?qū)@些初級(jí)QA人員進(jìn)行全面系統(tǒng)化的持續(xù)專業(yè)技能培訓(xùn)、工作方法指導(dǎo)以及解答困惑,就能極大地降低他們面臨的阻力和困惑,并給予他們完成工作所需的足夠能力和信心。

要實(shí)現(xiàn)這樣的培訓(xùn)和持續(xù)指導(dǎo),需要建立一個(gè)部門的概念來負(fù)責(zé)執(zhí)行。例如,設(shè)立一個(gè)虛擬的QA部門,由該部門統(tǒng)一實(shí)施培訓(xùn),并由公司內(nèi)部經(jīng)驗(yàn)最豐富的QA人員擔(dān)任講師。此外,除了系統(tǒng)化的培訓(xùn),QA人員的成長還需要專業(yè)人士提供持續(xù)的輔導(dǎo)和幫助,并進(jìn)行職業(yè)生涯規(guī)劃。

這項(xiàng)工作的重要性直接影響著QA人員的發(fā)展和職業(yè)生涯,甚至有可能改變對(duì)QA工作的看法,從而讓原本打算放棄的QA人員喜歡上這份工作。在我所見過的許多公司中,這個(gè)工作一般由部門的QA經(jīng)理或項(xiàng)目組合經(jīng)理負(fù)責(zé)。其次,公司應(yīng)該設(shè)立相應(yīng)的標(biāo)桿職位和晉升通道,為QA人員提供明確的目標(biāo),從而激發(fā)他們更強(qiáng)的自我驅(qū)動(dòng)力,學(xué)習(xí)、成長和工作。

對(duì)于管理QA人員而言,如果他們是公司內(nèi)部員工,可以通過建立系統(tǒng)化的培養(yǎng)計(jì)劃,將他們培養(yǎng)成為符合我們要求的合格QA,并通過持續(xù)的輔導(dǎo)和指導(dǎo)確保他們能夠很好地完成相應(yīng)的工作。然而,管理外部QA人員會(huì)面臨一些困難。首先,通常情況下,外部QA人員都是臨時(shí)加入的,且可能存在較大的變動(dòng)性,導(dǎo)致難以持續(xù)系統(tǒng)地培養(yǎng)他們,使他們能夠勝任符合我們要求的QA工作。其次,如果他們的能力無法滿足工作需求,那么只能將一些基礎(chǔ)的測試工作交給他們,比如一些簡單的手動(dòng)測試執(zhí)行工作。

然而,在標(biāo)準(zhǔn)的敏捷測試體系中,手動(dòng)測試并不是主要的工作內(nèi)容,這使得能力不足的外部QA人員很難發(fā)揮作用。除非項(xiàng)目的自動(dòng)化測試覆蓋率極低或者不足,同時(shí)項(xiàng)目對(duì)質(zhì)量的要求很高,此時(shí)大量的外部QA人員才可能在大規(guī)模的功能驗(yàn)證測試和回歸手動(dòng)測試中發(fā)揮高效的作用。如果他們的能力足夠,經(jīng)過直接或系統(tǒng)化的培訓(xùn)后,他們也可以勝任與公司內(nèi)部QA相同的工作。

因此,根據(jù)不同的項(xiàng)目情況和外部QA人員的能力水平,是否選擇外部QA人員可能會(huì)得到不同的答案。在項(xiàng)目人力資源嚴(yán)重不足的情況下,無法招聘到足夠的QA人員,只能選擇使用外部QA人員。這時(shí)可以將外部QA人員分為兩類:第一類只負(fù)責(zé)手動(dòng)測試的執(zhí)行,特別是在項(xiàng)目有大量手動(dòng)測試需要執(zhí)行時(shí);第二類具備較好的測試和質(zhì)量技能,通過系統(tǒng)化的培訓(xùn)使其能夠完成敏捷測試和質(zhì)量內(nèi)建體系中一個(gè)QA所需完成的工作,從而解決人力資源問題。

解決測試用例的管理和知識(shí)傳遞問題

Senior QA負(fù)責(zé)用例分析和設(shè)計(jì)工作,然后招聘外部QA來執(zhí)行手動(dòng)測試用例,或者要求初級(jí)開發(fā)人員來實(shí)現(xiàn)自動(dòng)化測試用例。這種工作模型在不少大型企業(yè)中被廣泛采用,但效率較低,同時(shí)存在用例管理和傳遞的問題。

對(duì)于大量測試用例,如果編寫得非常詳細(xì),甚至到操作步驟級(jí)別,一旦流程發(fā)生變更就會(huì)變成一場噩夢。但如果只寫測試點(diǎn),缺乏更詳細(xì)的業(yè)務(wù)或用戶流程描述,知識(shí)傳遞可能存在遺漏和誤解,導(dǎo)致大量遺漏和誤測,降低測試的有效性。

為了解決這個(gè)問題,可以嘗試結(jié)合敏捷測試中的測試左移和活文檔的方法提出建議和改進(jìn)方案。在敏捷測試中,我們建議基于業(yè)務(wù)流程或用戶行為來描述測試用例(參見我的文章測試用例的編寫和管理和播客質(zhì)量三人行之測試用例),以降低維護(hù)成本。然而,基于用戶行為的方式也存在一個(gè)問題,即執(zhí)行測試或進(jìn)行自動(dòng)化測試需要對(duì)項(xiàng)目背景和業(yè)務(wù)知識(shí)有一定的了解才能理解測試用例。

因此,這種工作模式能夠有效執(zhí)行的前提條件是:對(duì)于需要外部手動(dòng)測試的情況,首先需要項(xiàng)目投入大量人力和時(shí)間編寫基于詳細(xì)測試步驟的測試用例以實(shí)現(xiàn)足夠的覆蓋率,并且沒有人從事自動(dòng)化測試,全部依靠人工測試。項(xiàng)目需要允許長時(shí)間的測試,并且在項(xiàng)目變更時(shí)能夠投入足夠的人力資源和時(shí)間來維護(hù)測試用例,最終項(xiàng)目能夠接受這種低效率的工作模式。 

對(duì)于需要初級(jí)開發(fā)人員編寫自動(dòng)化測試用例的情況,首先需要編寫基于領(lǐng)域語言和業(yè)務(wù)行為的測試用例,以實(shí)現(xiàn)足夠的覆蓋率。其次,需要對(duì)這些開發(fā)人員進(jìn)行項(xiàng)目業(yè)務(wù)和技術(shù)相關(guān)的培訓(xùn),使他們基本掌握項(xiàng)目的業(yè)務(wù)知識(shí)、領(lǐng)域語言和技術(shù)棧等。編寫用例的人員還需要與開發(fā)人員保持經(jīng)常溝通,只有這樣,開發(fā)人員才能有效地開發(fā)自動(dòng)化測試。

對(duì)于第一種模式,它需要大量時(shí)間和資源投入,不適合敏捷項(xiàng)目,更適合人力和時(shí)間資源豐富的大型產(chǎn)品項(xiàng)目。對(duì)于第二種模式,資源投入也較大,但只要項(xiàng)目的人力資源足夠,對(duì)于敏捷項(xiàng)目也是可行的。而這兩種模式的共同前提是,公司、部門和團(tuán)隊(duì)都認(rèn)識(shí)到測試分析和設(shè)計(jì)的重要性,并認(rèn)可測試用例與產(chǎn)品代碼一樣重要、有價(jià)值的產(chǎn)出,從而讓QA人員能夠感受到他們工作產(chǎn)出的價(jià)值,獲得足夠的成就感。

總結(jié)

對(duì)于QA角色而言,其主要目的是幫助項(xiàng)目提升和保證質(zhì)量,以滿足項(xiàng)目的質(zhì)量要求。一個(gè)QA引以為傲的是能夠幫助項(xiàng)目取得高質(zhì)量的成果。

如果一個(gè)項(xiàng)目本身對(duì)質(zhì)量要求很低,不愿在測試、質(zhì)量工作和QA資源上投入足夠,那么少量的QA在工作中多半會(huì)感到困難重重,缺乏安全感和成就感。因此,對(duì)于質(zhì)量要求低的項(xiàng)目來說,可以不需要QA。但對(duì)于質(zhì)量要求高的項(xiàng)目,要么提供足夠的QA資源,無論是內(nèi)部員工還是承包商;要么如果無法提供足夠的QA資源,就需要提供足夠的時(shí)間和其他角色的人力資源,實(shí)施高度的質(zhì)量內(nèi)建實(shí)踐,并讓所有角色分擔(dān)所有必要的測試和質(zhì)量工作,只有這樣才能有效保證項(xiàng)目以高質(zhì)量的結(jié)果呈現(xiàn)。

專業(yè)事務(wù)需要專業(yè)人士來處理,這不僅能獲得更好的結(jié)果,還能節(jié)約時(shí)間。

責(zé)任編輯:趙寧寧 來源: Thoughtworks洞見
相關(guān)推薦

2014-11-10 09:20:36

空中網(wǎng)絡(luò)谷歌Facebook

2019-03-14 14:44:32

自動(dòng)駕駛Ore Go治堵

2023-07-13 08:12:26

ControllerSpring管理

2010-05-11 10:41:21

職業(yè)IT人

2021-03-24 13:29:27

區(qū)塊鏈穩(wěn)定幣金融

2012-07-24 12:47:37

軟件設(shè)計(jì)架構(gòu)設(shè)計(jì)

2017-05-08 13:45:55

資源池化核心交易系統(tǒng)

2010-01-14 10:06:30

C++模板

2016-04-18 12:58:42

菜鳥程序員跳槽

2024-05-24 14:04:04

2022-12-06 08:45:33

數(shù)據(jù)庫OS產(chǎn)品

2022-04-02 15:04:46

Windows 11Linux微軟

2019-12-19 14:17:11

以太坊去中心化加密貨幣

2022-03-14 14:15:37

比特幣加密貨幣去中心化

2023-09-26 09:55:04

英特爾芯片AI芯片

2024-05-07 07:02:00

5G5G-A6G

2021-02-03 17:52:38

AI 數(shù)據(jù)人工智能

2011-11-14 09:10:08

虛擬化

2024-02-29 15:27:10

2018-07-30 11:03:08

4GB內(nèi)存8GB
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)