aboutsummaryrefslogtreecommitdiffstats
path: root/lib/common_test/src
AgeCommit message (Collapse)Author
2013-01-10Merge branch 'siri/cross-cover/OTP-9870'Siri Hansen
* siri/cross-cover/OTP-9870: [test_server] Don't use print/3 in cross_cover_analyse [common_test] Add documentation for cross cover analysis [common_test] Add test case for cross cover mechanism [test_server] Update documentation about cross cover [test_server] Add test of code cover mechanism [test_server,common_test] Fix cross cover mechansim
2013-01-09Merge branch 'siri/cover/new-bugs-r16/OTP-10638'Siri Hansen
* siri/cover/new-bugs-r16/OTP-10638: [cover] Cleanup by stopping cover between tests [common_test] Stop cover on slave node after node is terminated [test_server] Stop cover on node after node is terminated [cover] Fix timing dependent bug in cover_SUITE:reconnect [cover] Remove stopped node also from lost_nodes list [cover] Don't mark stopped node as lost
2012-12-20[common_test] Stop cover on slave node after node is terminatedSiri Hansen
Before terminating slave nodes, common_test calls cover:flush/1 to fetch data from the node without actually stopping cover on this node. If cover is not stopped for the node and a new node with the same name is started, then cover will be started on the new node. To avoid this common_test now calls cover:stop/1 after the slave node is terminated.
2012-12-19[common_test] Adjust window after netconf client receives dataSiri Hansen
If ssh_connection:adjust_window/3 is not called after each time data is received in the netconf client, the client will eventually stop receiving data. This bug has been corrected.
2012-12-18Merge branch 'maint'Siri Hansen
Conflicts: lib/common_test/test/Makefile
2012-12-12[common_test] Fix cth_surefireSiri Hansen
The following corrections/changes are done in the cth_surefire hook: * Earlier there would always be a 'properties' element under the 'testsuites' element. This would exist even if there were now 'property' element inside it. This has been changed so if there are no 'property' elements to display, then there will not be a 'properties' element either. * The XML file will now (unless other is specified) be stored in the top log directory. Earlier, the default directory would be the current working directory for the erlang node, which would mostly, but not always, be the top log directory. * The 'hostname' attribute in the 'testsuite' element would earlier never have the correct value. This has been corrected. * The 'errors' attribute in the 'testsuite' element would earlier display the number of failed testcases. This has been changed and will now always have the value 0, while the 'failures' attribute will show the number of failed testcases. * A new attribute 'skipped' is added to the 'testsuite' element. This will display the number of skipped testcases. These would earlier be included in the number of failed test cases. * The total number of tests displayed by the 'tests' attribute in the 'testsuite' element would earlier include init/end_per_suite and init/end_per_group. This is no longer the case. The 'tests' attribute will now only count "real" test cases. * Earlier, auto skipped test cases would have no value in the 'log' attribute. This is now corrected. * A new attributes 'log' is added to the 'testsuite' element. * A new option named 'url_base' is added for this hook. If this option is used, a new attribute named 'url' will be added to the 'testcase' and 'testsuite' elements. Tests are added for the ct_surefire hook.
2012-12-06Merge branch 'egil/fix-dialyzer-specs/OTP-10601'Björn-Egil Dahlberg
* egil/fix-dialyzer-specs/OTP-10601: common_test: Fix exported types
2012-12-04[test_server,common_test] Fix cross cover mechansimSiri Hansen
Update the interface for cross cover analysis (collection of cover data over multiple tests) so it can be used via common_test and directly with test server. The concept of 'application' in the cross cover interface is removed and replaced with an arbitrary Tag=atom() which identifies a test run.
2012-11-29common_test: Fix exported typesBjörn-Egil Dahlberg
* inet:host_name() -> inet:hostname() * ct:hook_options() -> ct_netconfc:hook_options()
2012-11-26Merge branch 'bjorn/ct/env-vars/OTP-10469'Björn Gustavsson
* bjorn/ct/env-vars/OTP-10469: Add support for passing environment variables in master mode Remove redundant sleep in ct_master_SUITE Test that test cases succeed Add ct_test_support:verify_events/4 which takes a node name
2012-11-23Merge branch 'peppe/common_test/group_search_r15b03.fix'Peter Andersson
2012-11-23Fix silly bugPeter Andersson
2012-11-22Merge branch 'maint'Peter Andersson
2012-11-21Document the new group search featurePeter Andersson
2012-11-20Merge branch 'maint'Peter Andersson
Conflicts: lib/common_test/test/Makefile
2012-11-20Merge remote branch 'origin/peppe/common_test/group_search_r15b03' into maintPeter Andersson
* origin/peppe/common_test/group_search_r15b03: Fix problem with test case order in group specifications Finish the test suite and correct remaining bugs Implement new group search functionality OTP-10466
2012-11-20Merge branch 'maint'Peter Andersson
2012-11-19Fix problem with test case order in group specificationsPeter Andersson
2012-11-19Finish the test suite and correct remaining bugsPeter Andersson
OTP-10466
2012-11-19Implement new group search functionalityPeter Andersson
OTP-10466
2012-11-19Fix problem with config start option not accepting list of filesPeter Andersson
OTP-10495
2012-11-15Merge branch 'maint'Siri Hansen
2012-11-15Merge branch 'siri/common_test/ct_netconfc-close-problems' into maintSiri Hansen
* siri/common_test/ct_netconfc-close-problems: [common_test] Allow server to terminate netconf session before rpc-reply [common_test] Ensure process down after ct_netconf:close_session
2012-11-14[test_server] Recognize and ignore info_reports for ct connectionsSiri Hansen
test_server_h will now recognize info_reports written by ct connection handlers (according to the description in cth_conn_log) and ignore them as they will be completely handled by by ct_conn_log_h. Earlier test_server_h would print a tag (testcase name) before forwarding the report to error_logger_tty_h. This would cause lots of tags in the log with no info report following (since error_logger_tty_h did not handle them).
2012-11-14[common_test] Allow server to terminate netconf session before rpc-replySiri Hansen
OTP-10570 ct_netconfc:close_session sometimes returned {error,closed} because the ssh connection was closed (from the server side) before the rpc-reply was received by the client. This is normal and can not be helped. It has been corrected so the return will be 'ok' in this case. Other error situations will still give {error,Reason}.
2012-11-14[common_test] Ensure process down after ct_netconf:close_sessionSiri Hansen
OTP-10510 When starting a named netconf connection directly after stopping one with the same name, it sometimes failed with 'connection_exists'. This has been corrected.
2012-11-09Merge branch 'maint'Lukas Larsson
* maint: Fix bug where require of same name at same config would return name in use
2012-11-09Fix bug where require of same name at same config would return name in useLukas Larsson
2012-11-07Handle ct:abort_current_testcase/1 when executing parallel groupsBjörn Gustavsson
ct:abort_current_testcase/1 (which is a wrapper for the function with the same name in test_server_ctrl) would not work as expected when a group with parallel test cases was executing. Essentially, the abort_current_testcase message would be ignored until the group has finished and would then abort the end_per_group testcase for the group. Since there is no unique current testcase when a parallel group is executing, we must handle the abort_current_testcase message and return an error tuple. Also fix the bug that test_server_ctrl:abort_current_testcase/1 would always return 'ok'.
2012-10-31Merge branch 'siri/cover-tests'Siri Hansen
* siri/cover-tests: (21 commits) [common_test] Extend timer for flushing error logger [cover] Allow reconnection if node has been disconnected or down [cover] Don't kill remote nodes when connection to main node is lost [test_server] Add option {start_cover,false} to test_server:start_node Use code:lib_dir instead of code:which to get application directory [common_test] Add test for OTP-9956 Include all kernel modules in code coverage analysis [common_test] Add test suite for code coverage support [common_test, test_server] Don't flush cover if cover is not running [common_test] Add option cover_stop [test_server] Allow cross cover analysis when testing through common_test [test_server] Start cover in test_server:wait_for_node [test_server] Multiply timers with timetrap_scale_factor when starting nodes Include all stdlib modules in code coverage analysis [test_server] Include all test_server modules in code coverage analysis Skip epp_SUITE:otp_8911 if cover is running [common_test] Start cover on slave nodes if running cover tests [common_test] Don't stop cover before stopping slave node [test_server] Don't stop cover after test is finished [cover] Add support for test_server ... OTP-10427
2012-10-31Fix writing of configuration information to ct_master_log.htmlBjörn Gustavsson
Because of a forgotten "Fd", configuration information intended for ct_master_log.html ended up being written to standard output.
2012-10-31Add support for passing environment variables in master modeBjörn Gustavsson
Prototype-by: Magnus Lidén <[email protected]>
2012-10-30[common_test] Extend timer for flushing error loggerSiri Hansen
OTP-10040 If a busy test case generated lots of error messages, cth_log_redirect:post_end_per_testcase would crash with a timeout while waiting for the error logger to finish handling all error messages. The default timer is 5 seconds. This has now been extended to 5 minutes.
2012-10-30[common_test, test_server] Don't flush cover if cover is not runningSiri Hansen
ct_slave, ct_test_support and test_server_test_lib always called cover:flush/1 when stopping slave nodes. If cover was not running, this would cause cover_server to be started and thus test_server:is_cover/0 to return true afterwards. This has been corrected.
2012-10-30[common_test] Add option cover_stopSiri Hansen
By default, test_server will always stop cover (and thus load back the non cover compiled original beam files) after a test with code coverage analysis is completed. The new option allows the common_test user to specify that cover shall not be stopped. This can be useful if there are processes still running old code, i.e. processes that have not done any fully qualified function call after the cover compilation, since loading the original code then will kill those processes. This is only recommended if the erlang node is to be stopped after the test run, or if cover can be manually stopped.
2012-10-30[common_test] Start cover on slave nodes if running cover testsSiri Hansen
Nodes started with ct_slave should automatically run cover when tests are executed with cover analysis. Nodes must also be flushed for cover data before stopped.
2012-09-28[common_test] Added tests and corrected bugs in ct_snmpSiri Hansen
OTP-10454 OTP-10434 Function register_users/2, register_agents/2 and register_usm_users/2, and the corresponding unregister_*/1 functions were not executable. These are corrected/rewritten. Function update_usm_users/2 is removed, and an unregister function is added instead. Update can now be done with unregister_usm_users and then register_usm_users. Functions unregister_*/2 are added, so specific users/agents/usm users can be unregistered. Function unload_mibs/1 is added. Overriding configuration files did not work, since the files were written in priv_dir instead of in the configuration dir (priv_dir/conf). This has been corrected. Minor updates to documentation.
2012-09-26Merge branch 'bjorn/common_test/dialyzer-fixes'Björn Gustavsson
* bjorn/common_test/dialyzer-fixes: ct_master_logs: Don't use io:format/3 with an empty variable list common_test: Don't use undocumented features of io:format()
2012-09-24Merge branch 'siri/common_test/undefined-snmp-funcs/OTP-10088'Siri Hansen
* siri/common_test/undefined-snmp-funcs/OTP-10088: [common_test] Moved ct_snmp_SUITE into data dir and run as other ct tests [common_test] Updated (minimized) config for ct_snmp test after fixing bugs [common_test] Use ct_snmp 'agent_vsns' config value in snmp app config [common_test] Change NotifType to atom instead of string [common_test] Remove calls to undefined functions from ct_snmp [common_test] Add minor test suite for ct_snmp Conflicts: lib/common_test/test/Makefile
2012-09-21[common_test] Use ct_snmp 'agent_vsns' config value in snmp app configSiri Hansen
OTP-10432 Config parameter 'agent_vsns' in ct_snmp was ONLY used in call to snmp_config:write_agent_snmp_files. There it is only used for deciding if usm config shall be written (if v3 is included) or not. The value of 'agent_vsns' was NOT added to the snmp application's agent configuration, so the snmp application's own default value would be used - this is [v1,v2,v3]. The result was that if v3 was not included in 'agent_vsns', then usm.conf was not written, but when starting the agent it would complain that this file did not exist since snmp's default versions are all [v1,v2,v3]. This has been corrected - the 'agent_vsns' value is now inserted in the snmp application agent configuration as {versions,AgentVsns}.
2012-09-21[common_test] Change NotifType to atom instead of stringSiri Hansen
OTP-10432 In call to snmp_config:write_agent_snmp_files, the NotifType argument was earlier a string. This has been changed to an atom since it failed in snmp application and notify�conf was not created.
2012-09-20[common_test] Remove calls to undefined functions from ct_snmpSiri Hansen
2012-09-20ct_master_logs: Don't use io:format/3 with an empty variable listBjörn Gustavsson
It is bad practice to use an arbitrary string as a format string for io:format(), since it could contain a '~' character which could trigger a badarg exception. Therefore, replace all io:format/3 calls that looks like: io:format(Fd, String, []) with: io:put_chars(Fd, String)
2012-09-20common_test: Don't use undocumented features of io:format()Björn Gustavsson
The Format string argument for io:format() is not documented to accept an iolist, so we should not depend on it. Also, it is bad practice to use an arbitrary string as a format string for io:format(), since it could contain a '~' character which could trigger a badarg exception. Fix both problems at the same time by using io:put_chars() to display the iolist.
2012-09-19Teach test_server to report severe errors to common_testBjörn Gustavsson
If a severe error occurs in test_server (e.g. failing to write to log files), test_server would terminate without commont_test knowing about it. Since ct_run can now return an exit code, it is important that common_test is aware of severe problem so that it can indicate that an error has occurred.
2012-09-10Fix broken interactive modePeter Andersson
2012-08-31Update copyright yearsBjörn-Egil Dahlberg
2012-08-30Fix documentation errorPeter Andersson
2012-08-29Update the documentation for R15B02Peter Andersson
OTP-10050 OTP-10069 OTP-10072 OTP-10087 OTP-9865 OTP-10049 OTP-10089 OTP-10145 OTP-9896 OTP-10135 OTP-10067 OTP-9625 OTP-10127 OTP-10172 OTP-10248 OTP-9625 OTP-10086
2012-08-28Merge remote branch 'origin/peppe/common_test/break_cont_error' into maintPeter Andersson
* origin/peppe/common_test/break_cont_error: Make sure the test can never hang when ct:break/1/2 is called