Fork me on GitHub

Building the Testing Pipeline

This essay is a part of my knowledge sharing session slides which are shared for development and quality team. I want to share some contents here and hope that may trigger some brainstorming or thoughts about how could we do better test automation by development team in the software development cycle.

The related sessions:

Quick Index

Understanding tests better

Test Strategy

One of the key decisions is what kinds of tests should be automated and which approach to testing should be used for manual test.

Catch defect as quickly as possible

The V Model of Software Development

Unit Testing

Unit testing can be on little things like methods/functions or bigger things like modules and classes.

Component Testing

Component testing are used for testing packages, individual executables or subsystems.

System Testing

System testing is done at the level of the whole product and can include a range of system sizes:

individual systems or integrated workflows through multiple systems that have to interact.

Ideal Automated Testing Pyramid

Testing goes to fragile

Assembling a Test Pipeline

Continuous Integration

Defect Prevention before Defect Detection

The ultimate goal of any development process is to build the right product of high quality and to build it with minimum waste.

Defect Prevention techniques address how to prevent “error” before it is injected:

  • Root Cause Analysis of problem
  • Education and training
  • Software process maturity and improvement

Defect Detection techniques address how to find the faults:

  • Testing
  • Reviews and inspection
  • Formal verification 

Cause-and-Effect Diagram for error prevention

References

  1. Unit Testing
  2. Build the Testing Pipeline
  3. Automating tests vs. Test Automation
  4. Gmail测试工程经理Ankit Mehta的访谈
  5. Patterns & Practices Acceptance Test Engineering Guide
  6. Continuous Integration is backed by several important principles and practices
  7. Continuous Integration
  8. What TDD Is and Is Not
  9. 7 Deadly Sins of Automated Software Testing
  10. How Is Automation Return-On-Investment (ROI) Calculated?
  11. Continuous Delivery in a nutshell
  12. Testing WPF Applications - TestComplete
  13. Continuous Delivery: Anatomy of the Deployment Pipeline
  14. Continuous integration is about keeping it all together
  15. YAGNI - You Aint Gonna Need It
posted @ 2014-03-15 00:24 匠心十年 阅读(...) 评论(...) 编辑 收藏