I am trying to set up Jenkins to run our Cucumber features. I am a little lost when it comes to setting this up. Here are some details of our setup:
- Cucumber features with steps written in Ruby and PHP (using Cuke4PHP)
- PHP application (which often links to other PHP applications)
- Using Capybara and Selenium to exercise Javascript
In development environments, since our apps need to link to each other, we set up apache vhosts with domains like http://developername.dev.exampleapp.com
How should I set up this Jenkins environment to run our cucumber tests?
It seems like you would want to set up a virtual machine using VirtualBox or something in order to set up an environment similar to your production environment and serve the project from that virtual host. But then do you run the tests outside the virtual machine? Or do you run the tests on the virtual machine and report back to Jenkins? Do you set up virtual hosts when you provision the virtual machine? How do you set up your project to use an isolated database? How do you run your features in parallel so they don't take forever? If someone could shed some light I would greatly appreciate it.