Search code examples
phpautomated-testscodeception

Codeception run test from web interface


I need to run codeception's test from web interface. Have no idea how to do it and cant search it in google. Or it work for console only?


Solution

  • I need to run codeception's test from web interface.

    I am assuming by web interface you mean, running acceptance tests on web browser like firefox, chrome etc.

    If thats the case, then follow the steps from this page http://codeception.com/docs/03-AcceptanceTests

    Scroll down to the section: Selenium-WebDriver

    1. First create/generate a basic cept or cest test inside your acceptance directory

      ./vendor/bin/codecept generate:cept acceptance your-test-name
      
    2. Edit the acceptance.suite.yml:

      modules:
          enabled:
              - WebDriver
          config:
              WebDriver:
                  url: 'http://www.yoursite.com'
                  browser: 'firefox'
      
    3. If you don't have the selenium server yet, get it from http://www.seleniumhq.org/download/. (Grab the Selenium Standalone Server - current version is 2.47.0). We need the selenium server running to communicate with the browser (web interface) using the webdriver. To start the server, run the following command in a terminal window ( * replace it with the version you downloaded )

       java -jar /path/to/selenium-server-standalone-*.jar 
      
    4. Run the test on a separate terminal

      ./vendor/bin/codecept run acceptance --steps
      

    This should start the test in firefox browser. If you don't have firefox browser, please download it. If you like to use chrome instead, make sure to first get the correct chromedriver for your os, and then pass the path to chromedriver when you start the selenium server

    java -jar /path/to/selenium-server-standalone-*.jar -Dwebdriver.chrome.driver=/path/to/chromedriver