Name: CAM Test-harness project: Mission Statement (1 sentence): Construct a support system of scripts (a harness) that would allow CAM developers to easily and efficiently test their model changes. Goals: 1) Investigate current CAM testing procedure to identify exactly what tests are performed and in what model configurations. 2) Investigate current CCSM testing procedures to identify any methods worthy of replication in the new CAM test harness. 3) Have the harness accept as input a list of tests to be executed, such as a series of standard tests to be required for checkin to the CAM development branch. 4) Design the new test harness so that it can easily accept new tests that may be added in the future and allow any new test to conveniently re-use components of a previous test if possible. 5) To archive control runs for quick comparison if presumed model changes will be bit-for-bit. 6) Have the new test harness clearly log the tests it has run, their current status, and allow the user to stop execution if necessary. 7) To enable testing on supported platforms and compilers. 8) To have the new test harness run independently of any environment variables a user has set prior to its invocation. 9) Allow for regular review and improvement of the CAM testing process. 10) To ultimately allow CAM development to proceed more rapidly. Motivation: Current CAM test-model: 1) takes too long to run and duplicates many of its efforts, 2) leaves little information behind for users to diagnose, 3) has little in common with CCSM testing procedures, 4) is not testing recent features added to the model, 5) does not allow the easy addition of new tests. Authority: Mariana Vertenstein Project Lead: Mathew Rothstein Scientific Lead(s): None Implementation Schedule: *) All phases 12 weeks (Sep 27 - Dec 17) I) CAM and CCSM testing review 2 weeks (Sep 27 - Oct 8) II) architectural design 2 weeks (Oct 11 - Oct 22) III) coding & review, build 6 weeks (Oct 25 - Dec 3) IV) testing and validation 2 weeks (Dec 6 - Dec 17) updated 3/11/05: V) finalize set of initial tests 2 days (Mar 15) VI) finish documentation 3 days (Mar 18) VII) additional testing 15 days (Apr 8) Phase V refers to the set of tests required for a commit to the CAM development branch. The harness (with this set of tests) will be available to CAM developers in Phase VII. The new scripts can be run in parallel with the existing required testing procedures during this time. This project will be deemed completed when we can confidently replace the existing testing procedures with the new.