annotate doc/RUNNING_TESTS @ 1628:9c5f8e24dadc live tip

Quieten this cron script
author Chris Cannam
date Tue, 25 Aug 2020 11:38:49 +0100
parents 261b3d9a4903
children
rev   line source
Chris@0 1 Installing gems for testing
Chris@0 2 ===========================
Chris@0 3
Chris@1115 4 Remove your .bundle/config if you've already installed Redmine without
Chris@1115 5 the test dependencies. Then, run `bundle install`.
Chris@0 6
Chris@0 7 Running Tests
Chris@0 8 =============
Chris@0 9
Chris@0 10 Run `rake --tasks test` to see available tests.
Chris@1115 11 Run `rake test` to run the entire test suite (except the tests for the
Chris@1464 12 Apache perl module Redmine.pm and Capybara tests, see below).
Chris@1115 13
Chris@1464 14 You can run `ruby test/unit/issue_test.rb` for running a single test case and
Chris@1464 15 `ruby test/unit/issue_test.rb -n test_create` for running a single test.
Chris@0 16
Chris@909 17 Before running tests, you need to configure both development
Chris@0 18 and test databases.
Chris@0 19
Chris@0 20 Creating test repositories
Chris@1115 21 ==========================
Chris@0 22
Chris@0 23 Redmine supports a wide array of different version control systems.
Chris@0 24 To test the support, a test repository needs to be created for each of those.
Chris@0 25
Chris@0 26 Run `rake --tasks test:scm:setup` for a list of available test-repositories or
Chris@1115 27 run `rake test:scm:setup:all` to set up all of them. The repositories are
Chris@1115 28 unpacked into {redmine_root}/tmp/test.
Chris@1115 29
Chris@1115 30 If the test repositories are not present, the tests that need them will be
Chris@1115 31 skipped.
Chris@0 32
Chris@0 33 Creating a test ldap database
Chris@0 34 =============================
Chris@0 35
Chris@0 36 Redmine supports using LDAP for user authentications. To test LDAP
Chris@0 37 with Redmine, load the LDAP export from test/fixtures/ldap/test-ldap.ldif
Chris@1115 38 into a testing LDAP server. Make sure that the LDAP server can be accessed
Chris@0 39 at 127.0.0.1 on port 389.
Chris@0 40
Chris@1115 41 Setting up the test LDAP server is beyond the scope of this documentation.
Chris@0 42 The OpenLDAP project provides a simple LDAP implementation that should work
Chris@0 43 good as a test server.
Chris@1115 44
Chris@1115 45 If the LDAP is not available, the tests that need it will be skipped.
Chris@1115 46
Chris@1115 47 Running Redmine.pm tests
Chris@1115 48 ========================
Chris@1115 49
Chris@1115 50 (work in progress)
Chris@1115 51
Chris@1115 52 Running the tests for the Redmine.pm perl module needs a bit more setup.
Chris@1115 53 You need an Apache server with mod_perl, mod_dav_svn and Redmine.pm configured.
Chris@1115 54 See: http://www.redmine.org/projects/redmine/wiki/Repositories_access_control_with_apache_mod_dav_svn_and_mod_perl
Chris@1115 55
Chris@1115 56 You need an empty repository accessible at http://127.0.0.1/svn/ecookbook
Chris@1115 57 Then, you can run the tests with:
Chris@1115 58 `ruby test\extra\redmine_pm\repository_subversion_test.rb`
Chris@1115 59
Chris@1115 60 If you svn server is not running on localhost, you can use the REDMINE_TEST_DAV_SERVER
Chris@1115 61 environment variable to specify another host.
Chris@1464 62
Chris@1464 63 Running Capybara tests
Chris@1464 64 ======================
Chris@1464 65
Chris@1464 66 You need to have PhantomJS WebDriver listening on port 4444:
Chris@1464 67 `phantomjs --webdriver 4444`
Chris@1464 68
Chris@1464 69 Capybara tests can be run with:
Chris@1464 70 `rake test:ui`