Testing Area/Behat Testing/Setup: Difference between revisions
From Mahara Wiki
< Testing Area | Behat Testing
No edit summary |
No edit summary |
||
Line 20: | Line 20: | ||
{{note|There should be a behat_dataroot for each Mahara instance that you set up. Here the one for the master branch / this Mahara instance is created.}} | {{note|There should be a behat_dataroot for each Mahara instance that you set up. Here the one for the master branch / this Mahara instance is created.}} | ||
{{note|If the directory for $cfg->behat_dataroot does not exist then it will need to be created.}} | |||
4. Make your Behat data directory (check this matches what you set in config.php): | 4. Make your Behat data directory (check this matches what you set in config.php): |
Revision as of 15:32, 20 Haziran 2016
1. Set up your developer environment if you haven't already done so.
2. Install Behat's dependencies:
$ sudo apt-get install curl openjdk-7-jre-headless
3. Add the following config settings to the bottom of your Mahara config.php file inside the htdocs/ subdirectory of the Mahara codebase.
// Behat config
$cfg->behat_dbprefix = 'behat_'; // must not empty
$cfg->behat_dataroot = "/var/lib/maharadata/master_behat"; // Behat's copy of maharadata
$cfg->behat_wwwroot = 'http://localhost:8000'; // Must be this
4. Make your Behat data directory (check this matches what you set in config.php):
$ sudo mkdir /var/lib/maharadata/master_behat
5. Make the directory writeable by Mahara (check this is correct):
$ sudo chmod 777 /var/lib/maharadata/behat
6. Run Behat tests (change into your Mahara code directory first):
$ cd
$ cd code/mahara
./test/behat/mahara_behat.sh run
For the first time of running Behat, you need to wait for the Behat environment initialisation. This can take a while.
To run all tests:
./test/behat/mahara_behat.sh run
To run your specific tests marked with @yourtags:
./test/behat/mahara_behat.sh run @yourtags
To run a particular feature file:
./test/behat/mahara_behat.sh run my_file.feature
The run / runheadless / rundebug / rundebugheadless / runfresh are interchangable with run in above commands