Laravel Phpunit和Dusk with CircleCI

who*_*boy 8 php laravel circleci laravel-5 laravel-dusk

有没有人能够让Laravel DuskCircleCI上工作.

我可以让我的构建工作并使用PHPUnit进行测试但是Laravel Dusk失败了.

我有一个安装了Dusk的Laravel基础安装.当我到达php artisan dusk命令时,我收到以下错误.

错误

1) Tests\Browser\ExampleTest::testBasicExample
Did not see expected text [Laravel] within element [body].
Failed asserting that false is true.
Run Code Online (Sandbox Code Playgroud)

所以它正在启动chromebrowser,但没有访问该网站.

我尝试使用Dusk的chromedriver-linux,circleci的chromedriver,不使用php服务和其他各种调整.到目前为止,我没有运气.

这是repo的链接,相关文件发布在下面.

这是我的circle.yml档案.

machine:
  hosts:
    dusk.dev: 127.0.0.1
  timezone: America/Los_Angeles
  services:
    - mysql
  environment:
      APP_ENV: testing
      APP_KEY: randomq2VjceHV2t1Usdskeksa9yUI6a
  post:
    - chromedriver:
        background: true
dependencies:
  override:
    - composer install --prefer-dist --no-interaction
  post:
    - mv .env.example .env

test:
  override:
    - vendor/bin/phpunit
#    - ./vendor/laravel/dusk/bin/chromedriver-linux:
#          background: true
    - sudo php artisan serve --host=localhost --port=80:
          background: true
    - php artisan dusk
Run Code Online (Sandbox Code Playgroud)

.env.example 我复制到 .env

APP_ENV=local
APP_KEY=base64:BaGXvpvUWnUbGA1RiOapw45K2UCK8AeYM3o62IDV9Qw=
APP_DEBUG=true
APP_LOG_LEVEL=debug
APP_URL=http://localhost

BROADCAST_DRIVER=log
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync
Run Code Online (Sandbox Code Playgroud)

截图(从circleci拉出来并没有太大帮助).

在此输入图像描述

我发现这些文章很有帮助,但它们对我不起作用.

小智 4

以下代码对我们有用。尝试这个

圆.yml文件。

machine:
      pre:
        - sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
        - sudo apt-get update
        - sudo apt-get install google-chrome-stable
      services:
        - mysql
    dependencies:
      override:
        - composer install --prefer-dist --no-interaction
      post:
        - mv .env.testing .env
    test:
      override:
        - vendor/bin/phpunit
        - ./vendor/laravel/dusk/bin/chromedriver-linux:
              background: true
        - php artisan serve:
              background: true
        - php artisan dusk
Run Code Online (Sandbox Code Playgroud)

.env.测试

APP_ENV=local
APP_KEY=base64:BaGXvpvUWnUbGA1RiOapw45K2UCK8AeYM3o62IDV9Qw=
APP_DEBUG=true
APP_LOG_LEVEL=debug
APP_URL=http://localhost:8000

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
Run Code Online (Sandbox Code Playgroud)

输出结帐这里