loginAs($this->getUser(), 'admin'); } public function setUp(): void { parent::setUp(); $this->extendBrowser(); $this->boot(); } public function tearDown(): void { $this->destory(); parent::tearDown(); } /** * Prepare for Dusk test execution. * * @beforeClass * @return void */ public static function prepare() { static::startChromeDriver(); } /** * @param \Facebook\WebDriver\Remote\RemoteWebDriver $driver * * @return \Laravel\Dusk\Browser */ protected function newBrowser($driver) { $browser = parent::newBrowser($driver)->resize(1566, 1080); $browser->resolver->prefix = 'html'; if ($this->login) { $this->login($browser); } return $browser; } /** * Create the RemoteWebDriver instance. * * @return \Facebook\WebDriver\Remote\RemoteWebDriver */ protected function driver() { $options = (new ChromeOptions)->addArguments([ '--disable-gpu', '--headless', '--window-size=1920,1080', ]); return RemoteWebDriver::create( 'http://localhost:9515', DesiredCapabilities::chrome()->setCapability( ChromeOptions::CAPABILITY_W3C, $options ) ); } /** * Build the process to run the Chromedriver. * * @param array $arguments * @return \Symfony\Component\Process\Process * * @throws \RuntimeException */ protected static function buildChromeProcess(array $arguments = []) { return (new ChromeProcess(static::$chromeDriver))->toProcess($arguments); } }