You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

(This page needs debate or consensus)

Testing

As a core Java development API (and without any external system dependencies), Collections should have a set of tests that are deterministic (quasi-mathmatical) proofs of the operation of the system. Each test should stand alone.

JUnit 4

JUnit will most likely be used as the testing library as it has good literacy in the community, is what is already in use in collections (so the existing tests run without change). While TestNG is an excellent framework for testing, and does all sorts of wonderful stuff to help test "real" systems, collections is not one of those systems. All it's code is able to be tested in complete isolation from any external input, and the most complicated dependant tests are relatively simple.

Mock Objects

For testing the new version, we will be using [dynamic] Mock Objects. This is because they provide absolute isolation of the classes under test. Because the collections package is a core api, and is relatively simple, there is no need to test with fully constructed objects [and they'd get in the way over time].

  • No labels