Files
taimed/node_modules/testswarm/README.md
2025-07-24 17:21:45 +08:00

76 lines
2.0 KiB
Markdown

[![Build Status](https://travis-ci.org/jzaefferer/node-testswarm.svg?branch=master)](https://travis-ci.org/jzaefferer/node-testswarm) [![NPM version](https://badge.fury.io/js/testswarm.svg)](http://badge.fury.io/js/testswarm)
# node-testswarm
Nodejs module for interacting with TestSwarm
## Getting Started
Install the module with:
npm install --save-dev testswarm
```javascript
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.