7. Software Testing - WebJamApps/JaMmusic GitHub Wiki

7 Software Testing

Test driven development involves writing the acceptance criteria for the user story, then writing the test automation script for these acceptance criteria cases. After this has been completed, the code is written to perform the expected results. Lastly, the test is run to confirm the expectation. This process continues in a loop until all tests have passed for a particular user story (and all existing tests pass, meaning none of the existing features have been broken by the new code).

7.2 Static Tests

Developers perform peer reviews of the code, with changes tracked in Github.

7.3 Unit Tests

Dynamic Unit Test is performed in an automated fashion. Unit tests are to be driven by a test framework that is appropriate or the runtime environment of the executable code and run by a standard test runner.

Units under test are evaluated for branch, line, and statement coverage, and they are described in a behavior-driven fashion.

7.3.1 Unit Test Coverage Reports

These reports are generated using Istanbul coverage tool. Coverage reports are currently being generated for both the client-side and the server-side code.