DuskTestCase.php 978 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <?php
  2. namespace Tests;
  3. use Laravel\Dusk\TestCase as BaseTestCase;
  4. use Facebook\WebDriver\Chrome\ChromeOptions;
  5. use Facebook\WebDriver\Remote\RemoteWebDriver;
  6. use Facebook\WebDriver\Remote\DesiredCapabilities;
  7. abstract class DuskTestCase extends BaseTestCase
  8. {
  9. use CreatesApplication;
  10. /**
  11. * Prepare for Dusk test execution.
  12. *
  13. * @beforeClass
  14. * @return void
  15. */
  16. public static function prepare()
  17. {
  18. static::startChromeDriver();
  19. }
  20. /**
  21. * Create the RemoteWebDriver instance.
  22. *
  23. * @return \Facebook\WebDriver\Remote\RemoteWebDriver
  24. */
  25. protected function driver()
  26. {
  27. $options = (new ChromeOptions)->addArguments([
  28. '--disable-gpu',
  29. // '--headless'
  30. ]);
  31. return RemoteWebDriver::create(
  32. 'http://localhost:9515', DesiredCapabilities::chrome()->setCapability(
  33. ChromeOptions::CAPABILITY, $options
  34. )
  35. );
  36. }
  37. }