我正在使用拉拉维尔5.6
and Dusk
用于运行一些测试。
我总是这样截图
...
use Facebook\WebDriver\WebDriverDimension;
...
class LoginTest extends DuskTestCase
{
public function testLogin()
{
$user = User::first();
$this->browse(function ($browser) use ( $user ) {
$test = $browser->visit( new Login)
->resize(1920,1080)
...
->driver->takeScreenshot(base_path('tests/Browser/screenshots/testLogin.png'));
});
}
}
但随着我的测试会越来越多的使用,我不想每次都继续写->resize(X,Y)
and base_path('bla/blab/bla')
.
我想定义size and path对于将要编写的每个测试。
我想我应该定义一些函数tests/DesukTestCase.php
但我什至不知道如何找回驱动程序等等。
您有关于此的一些指导或文档吗?因为我找不到任何东西...
您只需要添加'--window-size=1920,1080'
in $options
。这会将 1920x1080 屏幕分辨率应用于所有 Dusk 测试。随意调整到您想要的任何窗口大小。
所以你的 DuskTestCase.php 文件应该如下所示:
protected function driver()
{
$options = (new ChromeOptions())->addArguments([
'--disable-gpu',
'--headless',
'--window-size=1920,1080',
]);
$driver = RemoteWebDriver::create(
'http://selenium:4444/wd/hub',
DesiredCapabilities::chrome()->setCapability(
ChromeOptions::CAPABILITY,
$options
)
);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)