services: test-rest: <<: &test-service build: .. entrypoint: [''] working_dir: /codecept env_file: .env volumes: - ./:/codecept/test environment: - MOCK_SERVER_HOST=mock_server command: ['/codecept/node_modules/.bin/mocha', 'test/rest'] depends_on: - json_server - mock_server test-acceptance.webdriverio: build: .. env_file: .env environment: - CODECEPT_ARGS=-c codecept.WebDriver.js --grep @WebDriverIO --debug depends_on: - php - selenium.chrome volumes: - ./acceptance:/tests - ./data:/data - ./support:/support - node_modules:/node_modules test-acceptance.puppeteer: build: .. env_file: .env environment: - CODECEPT_ARGS=-c codecept.Puppeteer.js --grep @Puppeteer - PPT_VERSION=$PPT_VERSION depends_on: - php - puppeteer-image volumes: - ./acceptance:/tests - ./data:/data - ./support:/support - node_modules:/node_modules test-bdd.faker: build: .. env_file: .env environment: - CODECEPT_ARGS=-c codecept.faker.js volumes: - ./bdd:/tests - ./data:/data - ./support:/support - node_modules:/node_modules selenium.chrome: image: selenium/standalone-chrome:4.26 shm_size: 2g ports: - 4444:4444 php: image: php:7.0 command: php -S 0.0.0.0:8000 -t /test/data/app ports: - 8000:8000 volumes: - .:/test json_server: <<: *test-service entrypoint: [] command: npm run test-server ports: - '8010:8010' # Expose to host restart: always # Automatically restart the container if it fails or becomes unhealthy mock_server: <<: *test-service entrypoint: [] command: npm run mock-server:start ports: - '3001:3001' # Expose to host restart: always # Automatically restart the container if it fails or becomes unhealthy environment: - PORT=3001 puppeteer-image: image: ghcr.io/puppeteer/puppeteer:22.4.1 volumes: node_modules: