/laravel-dusk-safari

Run Dusk tests in Safari

Primary LanguagePHPMIT LicenseMIT

Run Dusk tests in Safari

Latest Version on Packagist Total Downloads Software License Build Status

This package allows you to use the built-in Safari WebDriver of macOS, so you don't need Selenium to run Dusk tests in Safari.

This requires Safari 10 or higher.

Installation

You can install the package via composer:

composer require appstract/laravel-dusk-safari

Usage

Make sure to enable Remote Automation in the Safari menu bar:

Develop > Allow Remote Automation.

Add the SupportsSafari trait to your DuskTestCase:

use  Appstract\DuskDrivers\Safari\SupportsSafari;

abstract class DuskTestCase extends BaseTestCase
{
    use CreatesApplication, SupportsSafari;
}

Now you can start the server in the prepare method:

public static function prepare()
{
    static::startSafariDriver();
}

Instruct Dusk to use Safari by changing DesiredCapabilities::chrome() to DesiredCapabilities::safari() in the Driver method:

protected function driver()
{
    return RemoteWebDriver::create(
        'http://localhost:9515', DesiredCapabilities::safari()
    );
}

Contributing

Contributions are welcome, thanks to y'all :)

About Appstract

Appstract is a small team from The Netherlands. We create (open source) tools for webdevelopment and write about related subjects on Medium. You can follow us on Twitter, buy us a beer or support us on Patreon.

License

The MIT License (MIT). Please see License File for more information.