Test Log: Difference between revisions

From STRIDE Wiki
Jump to navigation Jump to search
No edit summary
Line 42: Line 42:


=== C++ Only Features ===
=== C++ Only Features ===
In C++ source the string variants of the macros above support adding to other content to the message by using the << operator. For more information please read [[C%2B%2B_Only_Features|this]].
In C++ source the macros above support adding to other content to the message by using the << operator. For more information please read [[C%2B%2B_Only_Features|this]].


== Code Snippets ==
== Code Snippets ==

Revision as of 18:43, 9 March 2010

Test Log macros provide a simple means to add information from the source under test to the currently executing test case. This information is added to the test report as annotations with a level of either Error, Warning, or Info according to the macro that is used. The log messages are also captured when tracing is enabled in the STRIDE runner.

The srTEST_LOG_xx() macro is intended to be a general instrumentation macro for capturing information in the source under test. Logs differ from test points in that they cannot be used for the basis of expectation tests - they are strictly informational. The STRIDE log messages are intended to supplement, not supplant STRIDE Test Points.

Reference

To use these macros you should include the srtest.h header file from the STRIDE Runtime in your compilation unit. The Test Log macros are active only when STRIDE_ENABLED is #defined, therefore it is practical to place these macros in-line in production source. When STRIDE_ENABLED is not #defined, these macros evaluate to nothing.

Error Logging
srTEST_LOG_ERROR(message) message is a pointer to a null-terminated string
srTEST_LOG[1..9]_ERROR(message, ...) message is a pointer to a null-terminated format string

... variable list (up to 9) matching the format string

Warning Logging
srTEST_LOG_WARN(message) message is a pointer to a null-terminated string
srTEST_LOG[1..9]_WARN(message, ...) message is a pointer to a null-terminated format string

... variable list (up to 9) matching the format string

Info Logging
srTEST_LOG_INFO(message) message is a pointer to a null-terminated string
srTEST_LOG[1..9]_INFO(message, ...) message is a pointer to a null-terminated format string

... variable list (up to 9) matching the format string

  • The maximum length of the message string approximately 1000 characters. If the maximum length is exceeded, the message string is truncated.

C++ Only Features

In C++ source the macros above support adding to other content to the message by using the << operator. For more information please read this.

Code Snippets

#include <srtest.h>
...
srTEST_LOG_ERROR("This is an error message.");

srTEST_LOG1_WARN("This is a warning message with format string %d.", 123);

srTEST_LOG2_INFO("This is an info message with format string %s and %s.", "this", "that");

#ifdef __cplusplus
srTEST_LOG_ERROR("some error: ") << "stream input supported under c++";
#endif