node-trx

    0.9.4 • 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

    Install

    npm i node-trx

    DownloadsWeekly Downloads

    18,237

    Version

    0.9.4

    License

    MIT

    Unpacked Size

    89.7 kB

    Total Files

    11

    Last publish

    Collaborators

    • bmancini55