Personal tools
Document Actions

#58: Unit tests and functional tests

  1. Motivation
  2. Proposal
The goal of this proposal is to make eduCommons more robust by adding unit tests for each product as well as functional tests. With these tests in place it will be much easier to determine if future modifications to the code break any existing functionality.
Proposed by
Tom Caswell
Proposal type
Assigned to release


Unit testing allows programmers to refactor code at a later date, and make sure the module still works correctly. It also provides a sort of living documentation of the system. Developers looking to learn what functionality is provided by a unit and how to use it can look at the unit tests to gain a basic understanding of what is going on.


Each product needs to be reviewed, and unit tests need to be created to validate that each method or function is working properly. Test cases using mock objects may need to be written to ensure that the code being tested meets software requirements and behaves as intended.