如何扩展 Laravel Dusk 浏览器?

How can I extend Laravel Dusk Browser?

我希望重写 \Laravel\Dusk\Browser 方法并用我自己的方法扩展它,再加上一些增强功能。这是我到目前为止所做的,但它给了我这个错误:

TypeError: Argument 1 passed to Tests\Browser\SequentialAppTest::Tests\Browser{closure}() must be an instance of Tests\MyBrowser, instance of Laravel\Dusk\Browser given,
called in /var/www/gtest/vendor/laravel/dusk/src/Concerns/ProvidesBrowser.php on line 67

/var/www/gtest/tests/Browser/SequentialAppTest.php:135 /var/www/gtest/vendor/laravel/dusk/src/Concerns/ProvidesBrowser.php:67 /var/www/gtest/tests/Browser/SequentialAppTest.php:157

文件:tests/MyBrowser.php

<?php

namespace Tests;

class MyBrowser extends \Laravel\Dusk\Browser 
{

}

文件:tests/Browser/SequentialAppTest.php 命名空间 Tests\Browser;

use Tests\DuskTestCase;
use Tests\MyBrowser as Browser;

...

class SequentialAppTest extends DuskTestCase 
{
 ....
}

在您的测试或 DuskTestCase 中覆盖 newBrowser():

use Tests\DuskTestCase;
use Tests\MyBrowser as Browser;

class SequentialAppTest extends DuskTestCase 
{
    protected function newBrowser($driver)
    {
        return new Browser($driver);
    }
}