From 7db62c1513718c565dafa85838f3aadb8851627c Mon Sep 17 00:00:00 2001 From: Peter Andersson Date: Wed, 11 Sep 2013 00:57:40 +0200 Subject: Add misc documentation --- lib/common_test/doc/src/ct_hooks_chapter.xml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'lib/common_test/doc/src/ct_hooks_chapter.xml') diff --git a/lib/common_test/doc/src/ct_hooks_chapter.xml b/lib/common_test/doc/src/ct_hooks_chapter.xml index a706bbf9e6..60cd9be918 100644 --- a/lib/common_test/doc/src/ct_hooks_chapter.xml +++ b/lib/common_test/doc/src/ct_hooks_chapter.xml @@ -322,6 +322,34 @@ post_end_per_testcase(_TC, Config, Return, CTHState) -> + +
+ Synchronizing external user applications with Common Test +

CTHs can be used to synchronize test runs with external user applications. + The init function may e.g. start and/or communicate with an application that + has the purpose of preparing the SUT for an upcoming test run, or maybe + initialize a database for saving test data to during the test run. The + terminate function may similarly order such an application to reset the SUT + after the test run, and/or tell the application to finish active sessions + and terminate. + Any system error- or progress reports generated during the init- or + termination stage will be saved in the + Pre- + and post test I/O log. (This is also true for any printouts made + with ct:log/2 and ct:pal/2).

+

In order to ensure that Common Test doesn't start executing tests, or + closes its log files and shuts down, before the external application + is ready for it, Common Test may be synchronized with the application. + During startup and shutdown, Common Test can be suspended, simply by + having a CTH evaluate a receive expression in the init- or terminate + function. The macros ?CT_HOOK_INIT_PROCESS (the process executing the hook + init function) and ?CT_HOOK_TERMINATE_PROCESS (the process executing + the hook terminate function), each specifies the name of the correct Common Test + process to send a message to in order to return from the receive. + These macros are defined in ct.hrl. +

+
+
Example CTH -- cgit v1.2.3