LIGGGHTS® Quality Assurance

AttachmentSize
Image icon testharness.png123.2 KB

Quality assurance

Quality assurance is an important part of software development, irrespective of if this development happens within a software company or by a community-driven effort. LIGGGHTS® is checked automatically running examples comparing the answers of the current release to the previous releases - this is called a test harness (test loop).

"Answers" are defined by means of various outputs (e.g. kinetic energy, particle trajectories) over time that are generated by a run.

A test harness helps to
(a) guarantee that the software can give the right answers to the tested problems
(b) find bugs
(c) check and verify parallel efficiency and consistency

Whenever we find a bug or identify an issue, a respective test case is added to the test harness, so it grows over time.

Everyone can contribute asked to participate in this effort by sending input scripts to the developers to include in the test harness . For you, this has the following advantage:
(a) you know the developers keep an eye on making the code better for the purpose you need it for
(b) we can make the code even better so the whole community profits

The picture attached to this page (you have to log in to view the attachment) shows an example of the test harness: The comparison of two runs of a simulation involving heat transfer, comparing the thermal energy of both runs. An "epsilon tube" of 5% and 10% is applied to check for deviations of two versions.