@wdio/static-server-service
Version: 
A WebdriverIO service that can serve your static websites
96 lines (70 loc) • 2.04 kB
Markdown
WebdriverIO Static Server Service
=================================
Some projects are front-end assets only, and don't run on more than a static server. This service helps you to run a static file server during testing.
## Installation
The easiest way is to add `/static-server-service` as a `devDependency` in your `package.json`, via:
```sh
npm install /static-server-service --save-dev
```
Instructions on how to install `WebdriverIO` can be found [here](https://webdriver.io/docs/gettingstarted).
## Configuration
To use the static server service, add `static-server` to your service array:
```js
// wdio.conf.js
export const config = {
    // ...
    services: ['static-server'],
    // ...
};
```
## Options
### `folders` (required)
Array of folder paths and mount points.
Type: `Array<Object>`
Props:
 - mount `{String}` - URL endpoint where folder will be mounted.
 - path `{String}` - Path to the folder to mount.
``` javascript
 // wdio.conf.js
 export const config = {
    // ...
    services: [
        ['static-server', {
            folders: [
                { mount: '/fixtures', path: './tests/fixtures' },
                { mount: '/dist', path: './dist' },
            ]
        }]
    ],
    // ...
 };
```
### `port`
Port to bind the server.
Type: `Number`
Default: `4567`
### `middleware`
Array of middleware objects. Load and instatiate these in the config, and pass them in for the static server to use.
Type: `Array<Object>`
Props:
 - mount `{String}` - URL endpoint where middleware will be mounted.
 - middleware `<Object>` - Middleware function callback.
Default: `[]`
``` javascript
// wdio.conf.js
import middleware from 'middleware-package'
export const config = {
    // ...
    services: [
        ['static-server', {
            middleware: [{
                mount: '/',
                middleware: middleware(/* middleware options */),
            }],
        }]
    ],
    // ...
};
```
----
For more information on WebdriverIO, see the [homepage](http://webdriver.io).