Download the PHP package glhd/dawn without Composer

On this page you can find all versions of the php package glhd/dawn. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package dawn

Build Status Test Coverage Status Latest Stable Release MIT Licensed Follow @inxilpro on Twitter

Dawn

Dawn is an experimental browser-testing library for Laravel. It aims to be mostly compatible with Dusk, but with different trade-offs[^1]. The main benefit of Dawn is that it allows you to write browser tests exactly as you write all other feature tests (database transactions, mocks, custom testing routes, etc). This generally means that they run faster and with fewer restrictions.

Warning This is a very early release. Some edge-cases have been accounted for. Many have not. Much of the Dusk API has been implemented, but plenty of methods and assertions are missing.

Installation

Install Dawn

You can install the development release of Dawn via Composer (you'll need PHP 8.1 and Laravel 9):

Install Chrome Driver globally

You'll also need chromedriver installed on your machine.

Note Eventually, Dawn will install a copy of chromedriver for you, just like Dusk. The current implementation has only been tested on MacOS with chromedriver installed via homebrew. YMMV.

Usage

To use Dawn, add RunsBrowserTests to any test case. Then you can call openBrowser() to get a Browser instance to start testing with.

Dawn API

Dawn aims to have an API that is mostly compatible with Laravel Dusk. Not all features or assertions are implemented, but for right now you're best using the Dusk documentation for reference.

Differences from Dusk

The primary API difference between Dawn and Dusk is that the Dawn APIs do not require browser interactions to happen inside of callbacks. For the most part, this just involves replacing calls to $this->browse() with $this->openBrowser() and removing the closure:

There are certain Dusk methods are either tricky to implement with Dawn's async I/O channel, or are impossible to recreate exactly due to serialization constraints (you cannot serialize a TCP connection, for example). Here are some such functions:

Dusk API Compatibility

Much of the Dusk API has been implemented, but not all of it.

Missing methods (may not be exhaustive):

Missing assertions (may not be exhaustive):

Troubleshooting

I get an error like `Failed to connect to localhost port 9515 after 2 ms: Couldn't connect to server`
Make sure you have both `chromedriver` and the same version of Google Chrome installed.

FAQ

Does it work on anything other that Chris's Mac?
🤷‍♂️
Will it ever work on Windows?
🤷‍♂️ Probably?
When can I use this?
Fortune favors the brave.
Is this the final API?
Most of the `RunsBrowserTests` is pretty solid. The underlying implementation may change a ton before 1.0.

Major TODO Items

[^1]: Dawn is generally easier to use out of the box, but writing custom low-level WebDriver code is trickier due to how Dawn works under the hood.


All versions of dawn with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
ext-json Version *
ext-pcntl Version *
ext-sockets Version *
ext-zip Version *
illuminate/support Version ^9.0
nyholm/psr7 Version ^1.5
php-webdriver/webdriver Version ^1.12
react/http Version ^1.7
symfony/psr-http-message-bridge Version ^2.1
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package glhd/dawn contains the following files

Loading the files please wait ....