Skip to content

jzaefferer/node-testswarm

Repository files navigation

Build Status NPM version

node-testswarm

Nodejs module for interacting with TestSwarm

Getting Started

Install the module with:

npm install --save-dev testswarm
var testswarm = require( "./lib/testswarm" ),
	testUrl = "http://localhost/jquery-core/test/",
	runs = {};

["attributes", "callbacks"].forEach(function (suite) {
	runs[suite] = testUrl + "?module=" + suite;
});

testswarm.createClient({
	url: "http://localhost/testswarm/"
})
.addReporter( testswarm.reporters.cli )
.auth({
	id: "example",
	token: "yourauthtoken"
})
.addjob(
	{
		name: "node-testswarm test job",
		runs: runs,
		browserSets: [ "example" ],
	}, function( err, passed ) {
		if ( err ) {
			throw err;
		}
		process.exit( passed ? 0 : 1 );
	}
);

For local testing, copy sample-test.js to test.js and modify to match your local TestSwarm setup.

API

createClient({ url })

  • Object config
  • String url - Url to root of TestSwarm install.

Client#addReporter( reporter )

  • Object reporter - usually testswarm.reporters.cli, unless you want to use a custom reporter

Client#auth({ id, token })

  • Object auth
  • String id - Username of TestSwarm account.
  • String token - Authentication token of account.

Client#addjob( options, callback )

  • Object options
  • String name - name of this job
  • Number runMax - [optional] how often failed tests should rerun
  • Object runs - Run urls by run name.
  • Array|String browserSets - which sets to test against
  • Number pollInterval - [optional] In milliseconds, default 5 seconds.
  • Number timeout - [optional] In milliseconds, default 15 minutes.
  • Function( Object err, Boolean passed, Object results ) callback

License

Copyright (c) 2014 Jörn Zaefferer Licensed under the MIT license.

About

Nodejs module for interacting with TestSwarm

Resources

License

Stars

Watchers

Forks

Packages

No packages published