I use common test framework to check some tricky scenarios.<br>Suppose that I wrote test case which intended to check user registration process:<br><br>    check_user_registration(Config) -><br>        UserSpec = proplists:get_value(user, Config),<br>        ok = do_register(UserSpec).<br><br>UserSpec contains several fields(name, email, login, password etc.).<br>Now I want to check user registration with different UserSpecs, with long login,<br>with utf8 name or weak password.<br><br>The idea is to generate different Config variables with different combination<br>of such properties and somehow tell CT execute test case with those configs:<br><br>    all() -> [{check_user_registration, Config1}, ... {check_user_registration, ConfigN}].<br><br>But I cant figure out how to do this. My first approach was to use groups [1] for this.<br>They could be generated from Module:groups/0 [2] and allow dynamically<br>change number of testcases and/or groups to be executed. Still, their definition<br>contains order of execution and other useful properties, but not actual Config.<br><br>[1] http://www.erlang.org/doc/apps/common_test/write_test_chapter.html#id71944<br>[2] http://www.erlang.org/doc/man/common_test.html#Module:groups-0<br>