From fe3492a98de29942477b061cd02c92246f4bf85a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Mon, 28 Mar 2016 15:36:42 +0200 Subject: Initial commit, new website system --- docs/en/erlang.mk/1/guide/common_test/index.html | 249 +++++++++++++++++++++++ 1 file changed, 249 insertions(+) create mode 100644 docs/en/erlang.mk/1/guide/common_test/index.html (limited to 'docs/en/erlang.mk/1/guide/common_test') diff --git a/docs/en/erlang.mk/1/guide/common_test/index.html b/docs/en/erlang.mk/1/guide/common_test/index.html new file mode 100644 index 00000000..aae734f1 --- /dev/null +++ b/docs/en/erlang.mk/1/guide/common_test/index.html @@ -0,0 +1,249 @@ + + + + + + + + + + + + Nine Nines: Common Test + + + + + + + + + + + + + + + + + + +
+
+
+
+ +

Common Test

+ +

Common Test is Erlang’s functional testing framework. +Erlang.mk automates the discovery and running of Common +Test suites.

+
+

Writing tests

+
+

The Common Test user guide +is the best place to learn how to write tests. Erlang.mk +requires that file names for test suites end with _SUITE.erl +and that the files be located in the $(TEST_DIR) directory. +This defaults to test/.

+
+
+
+

Configuration

+
+

The CT_OPTS variable allows you to set extra Common Test +options. Options are documented in the +Common Test user guide. +You can use it to set Common Test hooks, for example:

+
+
+
CT_OPTS = -ct_hooks cowboy_ct_hook
+

The CT_SUITES variable can be used to override what +Common Test suites Erlang.mk will be aware of. It does +not normally need to be set as Erlang.mk will find the +test suites automatically.

+

The name of the suite is the part before _SUITE.erl. +If the file is named http_SUITE.erl, the test suite +is http:

+
+
+
CT_SUITES = http ws
+
+
+
+

Usage

+
+

To run all tests (including Common Test):

+
+
+
$ make tests
+

To run all tests and static checks (including Common Test):

+
+
+
$ make check
+

You can also run Common Test separately:

+
+
+
$ make ct
+

Erlang.mk will create targets for all test suites it finds. +If you have a file named test/http_SUITE.erl, then the +target ct-http will run that specific test suite:

+
+
+
$ make ct-http
+

Erlang.mk provides a convenient way to run a specific +group or a specific test case within a specific group, +using the variable t. Note that this only applies to +suite-specific targets, like the ct-http example above.

+

To run all tests from the http_compress group in the +http_SUITE test suite, write:

+
+
+
$ make ct-http t=http_compress
+

Similarly, to run a specific test case in that group:

+
+
+
$ make ct-http t=http_compress:headers_dupe
+

To do the same against a multi-application repository, +you can use the -C option:

+
+
+
$ make -C apps/my_app ct-http t=my_group:my_case
+

Note that this also applies to dependencies. When using Cowboy +as a dependency, you can run the following directly:

+
+
+
$ make -C deps/cowboy ct-http t=http_compress
+

Finally, code coverage is available, +but covered in its own chapter.

+
+
+ + + +
+ +
+ + +

+ Erlang.mk + 1 + + User Guide +

+ +
    + + + +
+ +

Navigation

+ +

Version select

+
    + + + +
  • 1
  • + +
+ +
+
+
+
+ + + + + + + + + + + + -- cgit v1.2.3