Skip to content

The simplest way to run testling type tests in the browser

License

Notifications You must be signed in to change notification settings

ossdev07/run-browser

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

run-browser

The simplest way to run testling type tests in the browser

Dependency Status NPM version

Installation

npm install run-browser -g

Usage

run-browser <file> <options>

Options:
  -p --port <number> The port number to run the server on (default: 3000)
  -b --phantom       Use the phantom headless browser to run tests and then exit with the correct status code (if tests output TAP)
  -r --report        Generate coverage Istanbul report. Repeat for each type of coverage report desired. (default: text only)
  -t --timeout       Global timeout in milliseconds for tests to finish. (default: Infinity)
  -m --mock          Include given JS file and use for handling requests to /mock*


Example:
  run-browser test-file.js --port 3030 --report text --report html --report=cobertura

API Usage

Basic usage:

var runBrowser = require('run-browser');

var server = runBrowser('tests/test.js');
server.listen(3000);

Advanced Usage:

var runBrowser = require('run-browser');

var handler = runBrowser.createHandler('tests/test.js');
var server = http.createServer(function (req, res) {
  if (runBrowser.handles(req)) {
    return handler(req, res);
  }
  // any other server logic here
});
server.listen(3000);

For advanced phantomjs usage, just read the source in ./bin/cli.js

Mock server

If you pass -m localfile.js argument, the file is expected to export a function for handling requests to /mock*

module.exports = function (req, res) {
    if (req.url === '/mock/no-content') {
        res.statusCode = 204
        res.end('')
    }
}

License

MIT

About

The simplest way to run testling type tests in the browser

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 97.0%
  • HTML 3.0%