在Scrum中如何進行測試?

Scrum - Two Levels of Test?

http://insidesqa.blogspot.com/2008/11/scrum-two-levels-of-test.html

23 November 2008
Posted by Peter Marshall
Published in Inside QA

作者曾聽說在Scrum中測試做的比較少, 或者是測試的程度減少, 有些傳統的QA practices被擱置在一旁. 像是detailed functional testing, non-functional testing等等, 以及QA要如何面對, 在sprint/iteration的測試時間被縮短的狀況呢?

作者認為這並不是危機, 而是一個轉機. 因為Agile也是一個新的開始, 他們致力於在多變的狀況下, 如何快速開發, 提供夠品質並且對的軟體給顧客.

對agile testing來說, 它同樣也是一個新的開始, 也並沒有一定或是絕對的規範, 它是一個很好的時間點, 讓我們可以自行開創, 在這樣變化的狀況下, 什麼樣才是好的testing practices.

所以作者認為QA的角色已經被改變, 會有以下的轉變:
- No longer do we have to accept what the developer tells us is correct.
- We are now analysts, we have to carry out risk analysis to obtain insight into the danger of implementing functionalities.
- To write tests we need to invest time with the product owner, developer, and sometimes, the end user.
- We are now also functional analysts! The tester's role and importance has expanded.

根據作者的經驗, 以下是在Scrum環境中, 要確保軟體品質, 所需實踐的重要practices
1. Risk assessment
- Develop a simple assessment mechanism during the planning stage of your iteration.
- This will assist in identifying those user stories which require the most attention.

2. Acceptance criteria creation
- During the planning phase, work with the developer to elaborate the acceptance criteria of each user story.
- This will help enormously when writing tests.
- Knowing the bounadary criteria is essential to run effective tests.

3. Functional analysis
- Do some ground work.
- When you know that a user story will be ready to test the next day, try and obtain as much functional info you can.
- Use the demos to help you develop questions for the developer and the product owner.
- This will also help them in ensuring the right functionality is delivered.

4. Acceptance testing
- As we have no time to carry out all our usual test preperation and practices, ensure that a good set of acceptance tests can be obtianed from the previous practices.

5. Test automation
- This is essential.
- The developers should be writing unit tests and running them in a continuous integration like set up.
- In addition, the tester should be looking to write automated UI tests, building a framework that can be incorporated with a nightly build process.

6. Harding iterations
- This is where we can try to incorporate some of those more traditional test practices into the development process.
- This is a planned sprint or iteration prior to a big release that allows for a detailed functional review, exploratory testing, non functional testing, and the fixing of those defects not covered in previous sprints.

此外作者也列出一些網站, 上面有提供一些有關agile testing 和traditional testing的寶貴資訊, 可以幫助你在測試的大海中提供一盞明燈:
- www.stickyminds.com
- www.cutter.com
- www.processimpact.com
- www.testingstandards.co.uk
- www.testingreflections.com
- www.professionaltester.com
- www.opensourcetesting.org
- www.tmf.org.uk

    全站熱搜

    kojenchieh 發表在 痞客邦 留言(0) 人氣()