PHPackages                             rainlab/dusk-plugin - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Testing &amp; Quality](/categories/testing)
4. /
5. rainlab/dusk-plugin

ActiveOctober-plugin[Testing &amp; Quality](/categories/testing)

rainlab/dusk-plugin
===================

Browser testing for October CMS, powered by Laravel Dusk.

v1.0.1(2y ago)31.3k2PHP

Since Sep 6Pushed 1y ago3 watchersCompare

[ Source](https://github.com/rainlab/dusk-plugin)[ Packagist](https://packagist.org/packages/rainlab/dusk-plugin)[ RSS](/packages/rainlab-dusk-plugin/feed)WikiDiscussions main Synced 2w ago

READMEChangelogDependencies (2)Versions (2)Used By (0)

Dusk Plugin
===========

[](#dusk-plugin)

Browser testing for October CMS, powered by Laravel Dusk.

Installation Instructions
-------------------------

[](#installation-instructions)

To install with Composer, run from your project root

```
composer require rainlab/dusk-plugin
```

If using the latest version of Chrome, install the latest version of ChromeDriver for your OS.

```
php artisan dusk:chrome-driver
```

Otherwise, check the version of the Chrome browser you have installed, and install a given version of ChromeDriver for your OS.

```
php artisan dusk:chrome-driver 86
```

Defining Tests
--------------

[](#defining-tests)

To make your first test, create a new class inside the **tests/browser** folder. The following will authenticate to the backend panel and sign out again.

```
// File: plugins/october/test/tests/browser/AuthenticationTest.php
//
class AuthenticationTest extends BrowserTestCase
{
    public function testAuthentication()
    {
        $this->browse(function($browser) {
            $browser
                ->visit('/admin')
                ->waitForLocation('/admin/backend/auth/signin')
                ->assertTitleContains('Administration Area |')
                ->type('login', env('DUSK_ADMIN_USER', 'admin'))
                ->type('password', env('DUSK_ADMIN_PASS', 'admin'))
                ->check('remember')
                ->press('Login');

            $browser
                ->waitForLocation('/admin')
                ->assertTitleContains('Dashboard |')
                ->click('#layout-mainmenu .mainmenu-account > a')
                ->clickLink('Sign Out');

            $browser
                ->waitForLocation('/admin/backend/auth/signin')
                ->assertTitleContains('Administration Area |');
        });
    }
}
```

Creating Environment File
-------------------------

[](#creating-environment-file)

The `.env.dusk` environment file can be used for Dusk specific configuration. It is advisable to include the application URL to test in this file.

```
APP_URL=http://mylocalsite.dev/
```

Running Tests
-------------

[](#running-tests)

Use the `test:dusk` artisan command to run the dusk tests for a plugin code (first argument).

```
php artisan test:dusk
```

The following runs tests for the October.Test plugin.

```
php artisan test:dusk october.test
```

Use the `--browse` to enable interactive mode.

```
php artisan test:dusk october.test --browse
```

Use the `--filter` option to run a single test where the value is the test class name.

```
php artisan test:dusk october.test --filter=PeopleTest

```

End to End Example
------------------

[](#end-to-end-example)

Follow these instructions to get a test up and running.

1. Install the [latest version of Chrome](https://www.google.com.au/chrome/) browser
2. Install a [fresh copy of October CMS](https://docs.octobercms.com/)
3. Install this plugin `composer require rainlab/dusk-plugin`
4. Install latest chrome driver `php artisan dusk:chrome-driver`
5. Install [Test plugin](https://github.com/octobercms/test-plugin) `php artisan plugin:install October.Test --from=https://github.com/octobercms/test-plugin`
6. Create a file `.env.dusk` and include `APP_URL=http://yourlocaldev.tld` inside
7. Run tests `php artisan test:dusk october.test --browse`

### See Also

[](#see-also)

- [Laravel Dusk](https://laravel.com/docs/9.x/dusk)

### License

[](#license)

This plugin is an official extension of the October CMS platform and is free to use if you have a platform license. See [EULA license](https://octobercms.com/eula) for more details.

###  Health Score

28

—

LowBetter than 52% of packages

Maintenance29

Infrequent updates — may be unmaintained

Popularity20

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 81.3% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

1021d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/106532?v=4)[october](/maintainers/october)[@october](https://github.com/october)

---

Top Contributors

[![octoberapp](https://avatars.githubusercontent.com/u/6543374?v=4)](https://github.com/octoberapp "octoberapp (13 commits)")[![daftspunk](https://avatars.githubusercontent.com/u/1392869?v=4)](https://github.com/daftspunk "daftspunk (2 commits)")[![plebward](https://avatars.githubusercontent.com/u/106153950?v=4)](https://github.com/plebward "plebward (1 commits)")

### Embed Badge

![Health badge](/badges/rainlab-dusk-plugin/health.svg)

```
[![Health](https://phpackages.com/badges/rainlab-dusk-plugin/health.svg)](https://phpackages.com/packages/rainlab-dusk-plugin)
```

###  Alternatives

[helsingborg-stad/municipio

A bootstrap theme for creating municipality sites.

4028.3k10](/packages/helsingborg-stad-municipio)[orchestra/testbench-dusk

Laravel Dusk Testing Helper for Packages Development

1051.0M193](/packages/orchestra-testbench-dusk)[pressbooks/pressbooks

Pressbooks is an open source book publishing tool built on a WordPress multisite platform. Pressbooks outputs books in multiple formats, including PDF, EPUB, web, and a variety of XML flavours, using a theming/templating system, driven by CSS.

45344.0k1](/packages/pressbooks-pressbooks)[protonemedia/laravel-dusk-fakes

Persistent Fakes for Laravel Dusk

2197.4k2](/packages/protonemedia-laravel-dusk-fakes)[derekmd/laravel-dusk-firefox

Run Laravel Dusk tests in a Firefox browser

4885.1k1](/packages/derekmd-laravel-dusk-firefox)[pressbooks/pressbooks-book

This theme is named after Canadian media theorist Marshall McLuhan, who coined the phrase “the medium is the message.” It is designed for academic writing and is also suitable for fiction. Headings are set in Cormorant Garamond, and body type is set in Lora.

206.7k](/packages/pressbooks-pressbooks-book)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
