天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

什么是敏捷軟件測試

  在與不少測試從業(yè)人員討論到敏捷的時候,被問得最多的大約是兩個問題:“到底什么是敏捷軟件測試?”,“敏捷軟件開發(fā)還需要測試工程師嗎?”。前一個問題是對于敏捷測試本身定義的疑問,第二個問題則是對敏捷開發(fā)將測試工程師排除在外的擔心。其實,在探尋這兩個問題答案的過程中,我們可以更清晰的了解敏捷軟件開發(fā)中測試的工作定義,測試價值觀,以及敏捷開發(fā)中開發(fā)與測試工程師的配合。鑒于這兩個問題的意義,在本敏捷測試專欄的第一篇文章中,本人嘗試從自己的實踐出發(fā),盡可能清楚的回答這兩個問題。

  確實,相對于敏捷開發(fā)紅遍大江南北的狀況而言,對敏捷測試的討論則低調(diào)得多。敏捷聯(lián)盟定義了敏捷的4個價值聲明,以及伴隨的12條支持原則,這12條原則中沒有一條單獨提到測試。這是不是意味著測試在敏捷開發(fā)中并不重要呢?實際上,如果仔細研讀敏捷的12個原則,以及各種不同的敏捷實踐,就會發(fā)現(xiàn),測試在敏捷開發(fā)中占有非常重要的地位。無論是原則中的“頻繁交付”,還是對“可工作的軟件”的度量,或是敏捷開發(fā)實踐中的“測試驅(qū)動開發(fā)”,“行為驅(qū)動開發(fā)”,都離不開測試的支持。在本人看來,敏捷開發(fā)中不把測試單獨拿出來描述的原因,恰恰是因為在敏捷開發(fā)中,測試不再是一個單獨的、和開發(fā)獨立的過程,而是變成了驅(qū)動開發(fā)、衡量產(chǎn)出的主要的手段,成為了敏捷開發(fā)中所有工程師在工作時必須時刻考慮和實踐的一個部分。簡而言之,敏捷軟件測試更多的是一種理念,而非過程。

  既然是這樣,為什么我們還要在這個專欄中專門來討論“敏捷軟件測試”?本人接觸過不少軟件開發(fā)和測試工程師,他們所處的組織有的正在努力向敏捷開發(fā)轉(zhuǎn)型,有的已經(jīng)實踐了一段實踐的敏捷開發(fā),但由于由來已久的工作習慣,他們中的絕大多數(shù)并不能自覺的認識到測試在敏捷開發(fā)中的關鍵作用,而是有意無意的將測試仍然看作是與開發(fā)截然分開的“下一個階段”,導致在實踐敏捷開發(fā)的過程中遇到種種問題:要么是忽略了代碼質(zhì)量,導致在頻繁的迭代過程中,每一個迭代的問題層出不窮;或是沿用原有的方法安排對系統(tǒng)的系統(tǒng)測試,導致測試團隊疲于奔命,卻總也趕不上開發(fā)所要求的進度。在這種情況下,專門來討論敏捷軟件開發(fā)中的測試,也就是敏捷軟件測試的話題,對這些工程師應該會有一些幫助。

  那么,到底什么是敏捷軟件測試?很難給敏捷測試下一個精確、完善的定義,在本人看來,接納了敏捷的核心價值觀(溝通,簡單,反饋,勇氣,尊重),在敏捷軟件開發(fā)過程中開展的測試就可以被稱作是敏捷軟件測試。因此,敏捷軟件測試并不是一個與敏捷軟件開發(fā)同一層次的劃分,而是敏捷軟件開發(fā)中的一部分,與傳統(tǒng)的測試不同,敏捷軟件測試并不是一個獨立的過程,相反,它與整個敏捷開發(fā)中的其他活動交織在一起,處處都能看到它的影子。由于敏捷軟件測試并不傾向于一個單獨的過程定義,本人擬從敏捷軟件測試與傳統(tǒng)測試觀點的比較、敏捷軟件測試中采用的方法、測試工程師在敏捷軟件測試過程中的工作等方面來闡述之。在這篇文章中,我們主要從宏觀的角度來描述敏捷軟件測試,而在本專欄的后續(xù)文章中,我們將對敏捷軟件測試中采用的方法、工程師在敏捷軟件測試中的工作內(nèi)容等進行進一步的描述。

  敏捷軟件測試是建立在敏捷核心價值觀的基礎上,為了更生動的描述其與傳統(tǒng)軟件測試的區(qū)別,本人從自己的實踐經(jīng)驗出發(fā),嘗試給出包含了本人認為包含了敏捷測試關鍵要素的“敏捷測試檢查表”:

項目

檢查點

注釋

團隊

  • 測試工程師是否與開發(fā)工程師建立了緊密聯(lián)系?
  • 測試工程師是否與客戶建立和緊密聯(lián)系?
  • 是否參加每日站立會議?是否與開發(fā)工程師可以展開隨時的,面對面的,對等的討論?
  • 是否保持和客戶的良好溝通?是否和客戶一起維護良好定義的驗收測試?

反饋

  • 項目是否建立了合適的驗收測試?
  • 是否項目中每個人都能隨時了解當前工作與可交付產(chǎn)品的距離?
  • 是否建立了針對開發(fā)質(zhì)量的度量標準?
  • 開發(fā)工程師是否能夠快速得到對提交代碼的反饋?
  • 使用Dashboard、燃盡圖等方式展示當前工作與可交付產(chǎn)品之間的距離
  • 建立單元測試覆蓋率等度量指標
  • 使用持續(xù)集成或頻繁的構(gòu)建讓開發(fā)工程師快速得到提交代碼的質(zhì)量反饋

質(zhì)量文化

  • 是否建立了開發(fā)與測試工程師共享質(zhì)量目標的原則?
  • 團隊是否注重開發(fā)質(zhì)量,并在工作中盡可能保證高的開發(fā)/代碼質(zhì)量?
  • 共享質(zhì)量目標意味著質(zhì)量責任由所有工程師共同承擔
  • 不僅關注最終的產(chǎn)出,不斷對代碼進行重構(gòu),保證代碼質(zhì)量

開發(fā)測試

  • 是否進行了充分的開發(fā)測試?
  • 是否設立了持續(xù)集成環(huán)境,并以持續(xù)集成的結(jié)果作為能夠繼續(xù)提交代碼和發(fā)布的條件?
  • 是否建立了足夠多的自動化測試,以及在設計時關注自動化測試的要求?
  • 開發(fā)測試應該建立一定的測試覆蓋率標準,例如,在單元測試這個級別上,建立60%或80%的覆蓋率要求
  • 通過使用TDD、BDD等技術(shù),保證產(chǎn)品和代碼的可測試性
  • 建立足夠多的自動化測試,保證測試能夠滿足快速迭代的要求

  檢查表提到了“團隊”、“反饋”、“質(zhì)量文化”和“開發(fā)測試”四個方面的內(nèi)容,在本人看來,這四個方面體現(xiàn)的就是敏捷軟件測試與傳統(tǒng)軟件測試的最大的不同。傳統(tǒng)軟件測試關注的是通過盡可能完備的“覆蓋”去發(fā)現(xiàn)盡可能多的問題,把測試和開發(fā)當成是兩個獨立的過程,測試是對開發(fā)階段產(chǎn)生成果的驗證。而敏捷軟件測試則建立了一種不同的質(zhì)量文化:測試的目的是為了保證產(chǎn)品快速發(fā)布,也就是對生產(chǎn)率本身的提高。基于“驗證”的出發(fā)點必然會要求測試與開發(fā)的獨立,以及盡可能“客觀”和“完備”的度量產(chǎn)品質(zhì)量;而基于“生產(chǎn)率”的出發(fā)點則要求建立敏捷的團隊,要求測試與開發(fā)盡可能緊密,要求建立具有高度可測試性的軟件,以及基于這些的高度自動化測試。

  在檢查表列出的所有項目中,“質(zhì)量文化”是基礎,“團隊”是敏捷軟件測試得以實施的條件,“反饋”和“開發(fā)測試”則是敏捷軟件測試的具體方法。當然,你可以可以從敏捷的核心價值觀來階段這些項目:“團隊”關注的是溝通與尊重;“反饋”直接對應于反饋;“質(zhì)量文化”基于勇氣(承擔質(zhì)量責任的勇氣)與尊重;而“開發(fā)測試”則是反饋與簡單的具體體現(xiàn)。

  另一個在本文最初提出來的問題是:“敏捷軟件開發(fā)還需要測試工程師嗎?”,對這個問題,業(yè)界有不同的觀點。有人認為需要,因為總有一些是需要測試工程師的技能完成的工作;當然,也有人認為不需要,因為敏捷開發(fā)中的測試注重開發(fā)測試與自動化測試,開發(fā)工程師就可以自己搞定與測試相關的工作。在實踐中,那些大規(guī)模實踐敏捷開發(fā)的公司(例如Google),傾向于在組織中設置數(shù)量較少的測試工程師,在項目中分配較少的測試資源,甚至對某些項目,完全不使用測試工程師。

  就我的個人實踐經(jīng)驗,對大部分的項目,尤其是為明確的客戶開發(fā)的項目,需要在敏捷開發(fā)團隊中設置專職的測試工程師,因為:

  1. 測試與開發(fā)具有不同的思維方式:測試更注重全面的驗證和檢查一個系統(tǒng),而開發(fā)工程師往往很難在大的范圍內(nèi)建立這樣的思維方式。因此,無論是從系統(tǒng)的層面驗證產(chǎn)品,或是從應用系統(tǒng)的角度發(fā)現(xiàn)值得測試和驗證的點(access point),專職的測試工程師都更有效。
  2. 專職的測試工程師能夠更關注于測試基礎,建立測試需要的基礎架構(gòu):由于測試工程師具有更好的對測試的理解,通常他們能夠更多的考慮測試的需求而開發(fā)適合項目的測試基礎架構(gòu)(自動化測試框架),而開發(fā)工程師可以使用這些框架來建立面向功能或代碼的測試。

  但是,不得不說的是,敏捷開發(fā)對開發(fā)和測試工程師都提出了更要的要求,尤其是對測試工程師而言,傳統(tǒng)的只能“精確模擬用戶操作”的測試工程師,因為不能為產(chǎn)品帶來生產(chǎn)率的提升,在敏捷開發(fā)的團隊中,很難有所作為。在本專欄的后續(xù)文章中,我們會進一步討論測試工程師在敏捷軟件開發(fā)中的工作和任務。

  關于作者

  段念:Google中國高級測試經(jīng)理,畢業(yè)于華中科技大學,先后在通訊、嵌入式軟件、互聯(lián)網(wǎng)等多個行業(yè)的國內(nèi)外知名公司中從事軟件開發(fā)與測試工作。對軟件測試中的技術(shù)和管理工作有獨到見解,對軟件測試團隊管理、自動化測試、性能測試與開發(fā)測試有較多研究。

it知識庫什么是敏捷軟件測試,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 青草影院内射中出高潮-百度 | 一级做a爰片久久毛片苍井优 | a级全黄试频试看30分钟 | 无码天堂亚洲国产AV久久 | 无码任你躁久久久久久老妇双奶 | 国产精品99精品无码视亚 | 午夜精品久久久久久久99蜜桃 | 囯产少妇BBBBBB高潮喷水一 | 色姊姊真舒服 | 久久ZYZ资源站无码中文动漫 | 日本又黄又裸一级大黄裸片 | 阿片在线播放 | 在教室做啊好大用力 | 最近日本MV字幕免费观看视频 | 睡觉被偷偷进入magnet | 妈妈的朋友6未删减版完整在线 | 99pao成人国产永久免费视频 | 2020亚洲国产在线播放在线 | 丰满人妻无码AV系列 | 久久91精品国产91 | 星空无限传媒视频在线观看视频 | 久久中文字幕亚洲 | 国内精品视频一区二区在线观看 | 国产欧美国产综合第一区 | 偷上邻居熟睡少妇 | 两个客户一起吃我的奶 | 久久精品熟一区二区三区 | 天美传媒麻豆精品 | 国产又色又爽又刺激在线播放 | 伊人久久大香线蕉综合电影 | 久久久国产精品免费A片3D | 亚洲国产精品无码AV久久久 | 久青草国产观看在线视频 | 在线看片韩国免费人成视频 | 亚洲精品国产字幕久久vr | 69日本xxⅹxxxxx18 | 一区二区视频在线观看高清视频在线 | 门鱼电影完整版免费版 | 91伊人久久大香线蕉 | 国产亚洲AV精品无码麻豆 | 久久久久国产精品嫩草影院 |