[英]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
指定的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.
對不起我的英語=)
更新:
刪除端口后.env.dusk.local
的一部分.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
如果在 Laravel 桌面上測試失敗,它會在屏幕截圖頁面上給我一個隨機的 phpmyadmin 頁面。它必須給我一個錯誤的頁面。請參閱下面的頁面。 點擊這里。
您可以嘗試以下幾種方法:
1.確保復制“.env”重命名“.env.dusk.local”並更改APP_URL={ http://localhost:8000 } //you serve 2. run php artisan serve 3. run php artisan dusk 時間:2.17秒,內存:18.00 MB
調試: 1.更改 DuskTestCase.php 以查看您瀏覽的網站頁面http://localhost:9515 , DesiredCapabilities::chrome()
2.在你的測試文件中添加一行 ExampleTest.php pause(1000)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.