Testing

Ref:

Tools:

Term

Shakedown: period of testing

Equivalence Partitioning = Equivalence Class Partitioning = ECP

Boundary value analysis = BVA

Functional Specification Docuemnt

Testing Type

  • Regression Testing: confirm that a recent program or code change has not adversely affected existing features
  • Performance Testing: determine how a system performs in terms of responsiveness and stability under a certain load
  • Smoke Test: ensuring that the most important functions work (Build Verification Testing)
  • Sanity Test: Determine that the proposed functionality works roughly as expected

Unit Testing

F.I.R.S.T Principle

  • Fast
  • Isolated/Independent
  • Repeatable
  • Self-Validating
  • Thorough/Timely

Testivus

The Way of Testivus

  • If you write code, write tests.
  • Don’t get stuck on unit testing dogma.
  • Embrace unit testing karma.
  • Think of code and test as one.
  • The test is more important than the unit.
  • The best time to test is when the code is fresh.
  • Tests not run waste away.
  • An imperfect test today is better than a perfect test someday.
  • An ugly test is better than no test.
  • Sometimes, the test justifies the means.
  • Only fools use no tools.
  • Good tests fail.