@indigo/node-trx

0.8.1 • Public • Published

node-trx

Build Status Coverage Status

This is a Node utility for generating test results files in the Visual Studio Test Results File (TRX) format.

The TRX file format is compliant with the namespace http://microsoft.com/schemas/VisualStudio/TeamTest/2010, found in full spec in %VSINSTALLDIR%\xml\Schemas\vstst.xsd.

This libary is a partial implementation of the XSD.

This library was designed to reduce domain knowledge needed to create TRX files via a simple, fluent interface.

var fs = require('fs')
  , TRX = require('../trx')
  , TestRun = TRX.TestRun
  , UnitTest = TRX.UnitTest
  , computerName = 'bmanci01'
  , run;


run = new TestRun({
    name: 'Sample TRX Import',
    runUser: 'Brian Mancini',
    times: {
        creation: '2015-08-10T00:00:00.000Z',
        queuing: '2015-08-10T00:00:00.000Z',
        start: '2015-08-10T00:00:00.000Z',
        finish: '2015-08-10T00:00:01.500Z'
    }
  })
  .addResult({
    test: new UnitTest({
      name: 'test 1',
      methodName: 'test1',
      methodCodeBase: 'testing-framework',
      methodClassName: 'test1',
      owners: [{name: 'testOwner'}],
      description: 'This is test 1'
    }),
    computerName: computerName,
    outcome: 'Passed',
    duration: '00:00:44.7811567',
    startTime: '2010-11-16T08:48:29.9072393-08:00',
    endTime: '2010-11-16T08:49:16.9694381-08:00'
  })
  .addResult({
    test: new UnitTest({
      name: 'test 2',
      methodName: 'test2',
      methodCodeBase: 'testing-framework',
      methodClassName: 'test2',
      description: 'This is test 2'
    }),
    computerName: computerName,
    outcome: 'Inconclusive',
    duration: '00:00:44.7811567',
    startTime: '2010-11-16T08:48:29.9072393-08:00',
    endTime: '2010-11-16T08:49:16.9694381-08:00'
  })
  .addResult({
    test: new UnitTest({
      name: 'test 3',
      methodName: 'test3',
      methodCodeBase: 'testing-framework',
      methodClassName: 'test3',
      description: 'This is test 3'
    }),
    computerName: computerName,
    outcome: 'Failed',
    duration: '00:00:44.7811567',
    startTime: '2010-11-16T08:48:29.9072393-08:00',
    endTime: '2010-11-16T08:49:16.9694381-08:00',
    output: 'This is sample output for the unit test',
    errorMessage: 'This unit test failed for a bad reason',
    errorStacktrace: 'at test3() in c:\\tests\\test3.js:line 1'
  });


// output the json to the screen
console.log(run);

// write the output to exmample.trx
fs.writeFileSync('example.trx', run.toXml());

Error information can be provided by including errorMessage and errorStacktrace properties in the result. Stacktrace must conform to the syntax at [method signature] in [file path]:[line number] or it will be picked up by Visual Studio.

Standard output information can be included in the output property.

Unit tests

Run npm run test.

Releases

0.8.0 - Added support for Owners, update UUID to 3.0.0

0.7.0 - Added support for Attachments

0.6.0 - Added support for NotExecuted outcome.

0.5.0 - Added support for Pending and Timeout outcomes.

0.4.0 - Added support for configuring Times tag.

0.3.0 - Added support for configuring TestSetting and provides a default if not supplied.

0.2.0 - Added support for Unit Test description

0.1.2 - Added support for errors and stacktrace info

0.1.1 - Initial development release

Package Sidebar

Install

npm i @indigo/node-trx

Weekly Downloads

0

Version

0.8.1

License

MIT

Unpacked Size

90.2 kB

Total Files

11

Last publish

Collaborators

  • indigo