Development: Testing

Testing is a critical part of good practices of SW Project Development. There are two main schools of thought on when to introduce testing: Test-Oriented Development versus Test Driven Development. There are also different kinds of testing: Unit (small pieces of code that are being tested), Integration (as you take and integrate larger pieces of code together) and finally System/Acceptance (potentially involving customers).

Inside Industry

Inside Industry

....Antoine Pickard, Google Software Engineer

SW Engineering at Google

"Testing is crucial for organizations that lack large testing orgs. Google has 10 developers per tester so developers are largely responsible for their own testing. Need to be familiar with unit testing frameworks (e.g. jUnit) and mocking library(ies) for the relevant language. "​

 

Testing Frameworks

use opensource frameworks (code) to help you develop test cases.

 

C++ = Unit

Python = JUnit

Java = JUnit

Webdriver for integration testing

Overview of testing:

 

Test-ORIENTED Development

  1. write some code ( a little)
  2. write 1 or more test cases to test the new code
  3. if fail (RED) fix the implmentation
  4. Now you can do Code Review and Commit your code to your git repository

Test-DRIVEN Development

  1. write test method
  2. it will fail (RED) as no implmentation
  3. write implementation of the actual code so that the test passes (GREEN)
  4. Now you can do Code Review and Commit your code to your git repository

 

 

 

© Lynne Grewe