顯示具有 贏在測試 標籤的文章。 顯示所有文章
顯示具有 贏在測試 標籤的文章。 顯示所有文章

2012年11月4日 星期日

贏在測試-曹向志 摘要

軟體測試經驗的體會:
1.做事要認真,有耐心。當時大家的學習熱情都很高,如學習程式設計語言、學習硬體及業務知識。
2.測試要注意變換思考的角度。當時我們大概測試10輪左右,如果不轉變思考的角度,越到後面就越發現不了問題,因為思維已經形成了定勢。
3.當時因為使用的是編譯,進行白箱測試,使我對作業系統、語言本身都有了深入了解,這位我以後的工作打下的堅實的基礎。

作為一名軟體測試工程師,知識面應該更加寬廣,這樣才有利於測試工作。

教材編寫的流程:
1.確定教材編寫規劃
2.編寫具體的某一本教材的大鋼
3.大綱評審
4.編寫PPT
5.試講
6.改進,通過後開始編寫教材正文
7.課程評審
8.校對
9.編寫任課老師使用的教案
10.出版

如何做好專案管理:
1. 要做好時間管理
2. 要做好品質控制
3. 要有良好的溝通能力
4. 要做好風險管理

測試 vs. QA
QA主要負責品質確認、審計,控制研發過程和測試的品質。可以用一句簡單的話總結:測試是對階段成果品質把關,而QA應該是對過程品質把關。

外包測試團隊執行專案的主要流程和做法:
1. 學習軟體需求
先派出骨幹人員,跟蹤軟體需求的形成過程,對需求文件進行審查,嘗試找出需求中的問題,以促進需求的完整性、正確性和可測試性。
2. 提取測試需求
要把業務需求轉換成測試需求,這一步是很重要的。有了測試需求,我們就知道測試要做什麼工作。
3. 設計測試案例
用幾個測試案例來驗證一個測試需求。透過一個管理工具,我們把測試需求和測試官連起來,從而方便查看和評審。
4. 作評審(Review)
測試需求和測試案例評審,根據評審意見,進行相應的改進。
5. 煙霧測試(Smoke Testing)
指驗證軟體是否符合測試執行入口標準(1~2天)。通過標準是,其功能要90%都工作正常。標準要在前期各方討論確定。如果不進行煙霧測試,很難判斷軟體功能完成情況,將來很可能導致測試和研發交叉在一起,很難分清楚到底是開發方的問題還是測試方的問題。
6. 整合測試
這個階段的重點是測試個子系統的介面,整合測試週期比較短,基本上每週進行一輪(有時3~4天就一輪)。此階段主要是要看整個系統相關子系統介面是否正常工作,資料能否正常地輸入/輸出,並不驗證功能的正確性。
7. 功能測試
測試工作中最重要的是在整合測試階段活動的基礎上,進行更深入和更全面的測試(包含正常、異常的情況、帳務、介面等)。因為是全面的測試系統,所以每一輪週期要10多個工作日,但隨著熟悉程度的增加,會進行的愈來愈快。
8. 統計分析
對測試工作中的各種資料(包含測試需求數、測試案例數、bug發現/修復數、缺陷原因、投入工作量等)進行統計,這會外包測試更重要,因為客戶也希望看到量化的測試結果。
9. 性能測試
理論上可以和功能測試並行,但通常都會稍晚一點啟動。性能測試有三個重點:
a. 設計性能測試場景
b. 確定性能測試設備(需客戶去商量及準備)
c. 構建歷史資料/基礎資料(可透過寫一些儲存過程或借助一些工具產生)來測試3~5年後的性能表現
10. 測試報告
整理匯總各種測試資料,編寫測試報告,並做好測試報告的評審準備。
11. 接受度測試
專案測試和公司軟體產品測試是有一定差別的,專案是定制的,產品是通用的,要求不一樣。專案測試,與專案有關的連絡人的溝通要多一些;而進行產品測試,與內部的溝通要多一些,且這種溝通中阻礙和問題也比較少。


贏在測試 - 劉宇:測試的一個循環週期

原本想說要把在這本書看到的一些內容整理一下,然後覺得不錯的分享出來,不過才節錄了兩個人的內容就打字打得很累而放棄了。今天看到最後一個人,提到了一個測試的週期,我覺得很棒,所以又手癢稍微整理一下打了出來,以下就是書上的內容:

測試的一個循環週期

1.測試需求分析 (業務需求->測試需求)
首先,測試團隊需要結合產品定位、產品規格、典型應用,以及累積的經驗來確定需要測試哪些內容,這個過程稱為“測試需求分析”,即解決測什麼的問題。

2.測試設計
其次,需要考慮使用什麼樣的測試方案,採用什麼樣的測試步驟來驗證這些測試需求,這個過程成稱為“測試設計”,即解決怎麼測試的問題。在測試之前,還需要根據產品品質情況和程式碼變更情況,明確哪些內容可以不測,哪些內容需要重點測試,各個測試內容的時間和人力安排等等,以確定“測試策略和測試計畫”的過程。

3.測試執行
最後,就是分階段,利用已有的測試設計對產品實施測試,查看產品品質到底如何,這個過程就是“測試執行”過程。

4.測試分析
在計畫的測試任務完成之後,我們需要進行測試過程度量和缺陷分析,對產品的缺陷趨勢、測試人力投入、測試執行合理性,以及缺陷分佈給出合理的評估;並結合經驗資料,判斷產品是否達到了我們的品質目標,測試是否可以結束。而且透過對測試過程的分析,我們還能知道在哪些方面,我們需要繼續改進,為下一次測試提供優化依據。

只有完整經歷過上述不斷優化的循環,你才能說你做了一次完整的軟體測試。

贏在測試-陳紹英 內容摘要

測試的要點:方法、技術和溝通
1.測試方法。應該知道如何進行測試。
2.測試技術。應該知道如何去實現,並能解決各種技術難點,這樣才能更好地勝任測試工作了。
3.溝通與協作。只有善於溝通與團隊協作的人,才能做好測試工作。

對於測試工程師而言,好的技術背景非常的重要,尤其是開發能力。如果沒有良好的開發能力,往往在測試方面不能走得長遠,即使轉做管理也一樣。

Leader應該滿足的要求:
1.要有熱情與責任心,否則即使個人能力再強,你把他放到Leader的位置上也很有可能做不好工作。
2.要有夠硬的技術,因為需要帶領自己的小組攻破各種難關。
3.要有一定的個人威信,能夠團結人,你的話別人願意聽。
4.要有很好的溝通與協調能力,因為經常會與其他團隊進行溝通。良好的溝通能力保證自己能夠很好地去處理與開發小組,以及其他測試小組的關係,保政測試工作的順利進行。
5.要有大局觀,不應該只考慮自己小組的利益。好的Leader應該積極地配合測試經理做好整個測試部門的工作。
6.Leader對自己的工作應該有一個正確的定位。Leader不要把自己定位為經理,經理相對來說管理協調工作的時候多一些,側重於管理整個團隊,而Leader則是要解決問題的,主管別人去做好專案,很多工作要親自動手。如果Leader只是讓別人去做,自己卻僅僅在一旁“吆喝”,這就失去了Leader存在的意義。

如何做好軟體測試:
1.無論專案大小,要做好規劃。什麼時間,完成什麼任務,都要有規劃。
2.確定好測試流程。好的流程可以提高效率,降低溝通成本。
3.要做好測試案例的設計。測試案例是測試工作的靈魂,因此一定要設計好測試案例,以指導後面執行工作。
4.要做好缺陷管理。缺陷是開發與測試之間的橋梁,也是測試的直接目的,因此一定要跟蹤好每一個發現的軟體缺陷。

做職業發展規劃時,首先應該全面地分析自己的長處和不足,然後確定把什麼作為自己的核心競爭力。核心競爭力很容易理解,也就是那些不太容易掌握或者有一定技術成分的技能。確定核心競爭力後,接下來就是選擇行業,再選擇一個企業來培養自己的核心競爭力。

贏在測試-崔啟亮 內容摘要

學校學習和企業要求之間的差距
1.在學校的時候沒有團隊意識,常常是一個人單打獨鬥。
2.在學校的時候沒有專案的概念,沒有工程的概念。
3.在學校的時候沒有客戶的概念,程式只要能寫出來,能畢業就可以。

新人如何融入公司:
1.主動問。一定要把自己當作一個新人,有問題就主動及時問,不然誰知道你有問題呢?當然,不要總問一些弱智的問題,有了問題以後先自己找答案,現在網路也很發達,先到網路上找找解決的辦法。自己沒有辦法解決的,要主動問。不恥下問,這是很有道理的。
2.要總結。專案執行過程中自我總結,專案結束後總結,給個月自我反省和總結。
3.要有時間概念,按時完成,無法完成要及早提出來。例如,一項工作的安排,如果你覺得無法完成,就主動提出來,不要拖到最後,這樣會影響別人和大家的進度。例如,如果5點交付,你4點半才去告訴主管無法完成,他也沒有辦法幫你解決。
4.主動學習。到一個新環境,新專案,先去看測試用範例,然後看相關的資料,看書,上網查背景資料,都要主動學習。
5.要吸取教訓,不重犯錯誤。犯了錯誤以後,吸取教訓,避免再犯。
6.做事要符合規範。比方說,客戶要求附件用ZIP壓縮,而你用了RAR。你這個看似沒有什麼的舉動,卻會增加客戶的負擔。工作做得怎麼樣,很多都在細節上。因此,在做事之前,要先瞭解和掌握規範,我要做什麼,要求是什麼,以及什麼時候交付。

如何學習軟體測試:
1.找入門的、基礎的、簡單的書來看,先看前3章。不要一開始就去看厚厚的枕頭書,效果不好。現在軟體測試的書很多了,最好先看中文的。
2.現在有一些免費的測試交流會,去聽一聽,即使收一個場地費,也值得。
3.多瀏覽論壇。在論壇上,不要光發文章問別人要範本,而要多看文章,多發表問題。
4.如果經濟條件允許,可以報培訓班。
5.有機會的話,到一個公司進行實習。

工作經驗總結:
1.勤奮。我不是聰明的人,但我是個勤奮的人。我可能比別人慢一點,但我勤奮,也願意問問題,我相信“勤能補拙”。
2.開放。多交流,多交朋友,以開放的心態待人接物。
3.善於總結。遇到問題不可怕,要把經驗和教訓總結出來。