Laravel dusk, 错误的测试结果

Laravel dusk, incorrect testing result

我刚刚发现 Laravel Dusk,并编写了第一个测试,它必须检查页面上的文本,但是 Laravel Dusk 没有看到我的页。

测试:

namespace Tests\Browser;
use Tests\DuskTestCase;
use Laravel\Dusk\Browser;
use Illuminate\Foundation\Testing\DatabaseMigrations;
class FirstTest extends DuskTestCase
{
    public function testExample()
    {
        $this->browse(function (Browser $browser) {
            $browser->visit('/')
                ->assertSee('Laravel');
        });
    }
}

并且$browser->visit('/')检查成功,但是$browser->visit('/') ->assertSee('Laravel');检查失败。

在目录 tests/Browser/Screenshots 中我找到了那个页面的截图,其中包含 No input file specified

文件的一部分 .env:

APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:lypVdWwGkDn/R5L5PQ8tOUgfzf2WTzCSZU6GndMPuNM=
APP_DEBUG=true
APP_URL=http://127.0.0.1

添加文件 .env.dusk.local 后,其中包含:

APP_URL=http://127.0.0.1:9519

(根据Laravel Dusk手册中的规定,端口必须与DuskTestCase.php中指定的相匹配)

tests/Browser/screenshots/failed-test-* 包含:command:

错误文本:

Time: 2.58 seconds, Memory: 12.00MB

There was 1 failure:

1) Tests\Browser\FirstTest::testExample
Did not see expected text [Laravel] within element [body].
Failed asserting that false is true.

/home/vagrant/code/homestead_test/vendor/laravel/dusk/src/Concerns/MakesAssertions.php:400 /home/vagrant/code/homestead_test/vendor/laravel/dusk/src/Concerns/MakesAssertions.php:371 /home/vagrant/code/homestead_test/tests/Browser/FirstTest.php:18 /home/vagrant/code/homestead_test/vendor/laravel/dusk/src/Concerns/ProvidesBrowser.php:67 /home/vagrant/code/homestead_test/tests/Browser/FirstTest.php:19

FAILURES! Tests: 1, Assertions: 1, Failures: 1.

对不起我的英语=)

UPD:

删除端口后 .env.dusk.local 的一部分:(对于 Jonas Staudenmeir)。

APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:lypVdWwGkDn/R5L5PQ8tOUgfzf2WTzCSZU6GndMPuNM=
APP_DEBUG=true
APP_URL=http://127.0.0.1

已解决。我更改了 .env.dusk.local(设置为虚拟主机域),它正在运行。

例如APP_URL=http://homestead.test

特别感谢@Jonas Staudenmeir

如果测试在 laravel 桌面上失败,它会在屏幕截图上给我一个随机的 phpmyadmin 页面 page.It 必须给我提供 error.Please 的页面,请参阅下面的页面。 Click Here.

您可以尝试以下几种方法:

1.make 确保复制“.env”重命名“.env.dusk.local”并更改APP_URL={http://localhost:8000} //你服务 2. 运行 php artisan 发球 3. 运行 php artisan dusk 时间:2.17 秒,内存:18.00 MB

OK(1 个测试,1 个断言)

调试: 1.change DuskTestCase.php 看你浏览的是什么网站页面 http://localhost:9515 , DesiredCapabilities::chrome()

2.add 测试文件中的一行 ExampleTest.php pause(1000)