Jest-xunit: An Xunit Reporter for Jest

Jest XUnit

jest-xunit is a reporter for Jest that produces an XML in xunit format.

Installation

npm i -D jest-xunit

Then in your jest config specify jest-xunit as a reporter:

{
  ...
  reporters: [
        'default', // keep the default reporter
        [
            'jest-xunit',
            {
                traitsRegex: [
                    { regex: /\(Test Type:([^,)]+)(,|\)).*/g, name: 'Category' },
                    { regex: /.*Test Traits: ([^)]+)\).*/g, name: 'Type' }
                ]
            }
        ]
    ]
  ...
}

Config

configKeyDescriptionDefault
filenameThe filename of the results. The reporter outputs xml formattest-results.xml
outputPathThe path where the test results should be generated.process.cwd()
traitsRegexAn array of objects with the following keys: _ regex - A regex to be used to extract the traits _ name - The name of the extract trait type[]

Author: sscaff1
Source Code: https://github.com/sscaff1/jest-xunit 
License: 

#javascript #jest 

What is GEEK

Buddha Community

Jest-xunit: An Xunit Reporter for Jest
Origin Scale

Origin Scale

1623050424

Dashboard Reporting Software

Accurate and fast reporting with originscale dashboard reporting software. Run faster, smarter operations with help from dozens of easy-to-use online reports. Try for Free Demo Today

#dashboard reporting software #reporting dashboard software #dashboard reporting tool #dashboard reporting #inventory report dashboard

Jest-xunit: An Xunit Reporter for Jest

Jest XUnit

jest-xunit is a reporter for Jest that produces an XML in xunit format.

Installation

npm i -D jest-xunit

Then in your jest config specify jest-xunit as a reporter:

{
  ...
  reporters: [
        'default', // keep the default reporter
        [
            'jest-xunit',
            {
                traitsRegex: [
                    { regex: /\(Test Type:([^,)]+)(,|\)).*/g, name: 'Category' },
                    { regex: /.*Test Traits: ([^)]+)\).*/g, name: 'Type' }
                ]
            }
        ]
    ]
  ...
}

Config

configKeyDescriptionDefault
filenameThe filename of the results. The reporter outputs xml formattest-results.xml
outputPathThe path where the test results should be generated.process.cwd()
traitsRegexAn array of objects with the following keys: _ regex - A regex to be used to extract the traits _ name - The name of the extract trait type[]

Author: sscaff1
Source Code: https://github.com/sscaff1/jest-xunit 
License: 

#javascript #jest 

Adele Hansley

Adele Hansley

1625657209

What are the Trending Topics in Technical Report Writing?

Technical report writing is one of the most creative report writing subjects for scholars and students. Technical writing needs basic technological knowledge and information to prepare reports. One can take an online report writing service from a company providing such services at an affordable rate.

So, Let’s Begin With The Trending Topics In Technical Report Writing:

• The Genetic Engineering.
• Geographical Demonstration of Covid-19 deaths in Australia.
• The Number of Kangaroo’s death in Australia since 2019?
• What is the impact of Teleconferencing during Covid-19?
• Future of Robotics on Industrial Development and Unemployment.
• Effects of Mass Transportation Facilities on Global Warming.
• Relevancy of Artificial Human Organs?
• Scientific reasons for Heart Attacks.
• A Study on Space Science; the Moon, the Galaxy, and a Local Group.
These are some of the Trending Topics in Technical Report writing that might help you prepare your Research Report.

Components of Technical Report Writing

• Title Page of a Report
• Table of Contents (Containing every Topic in the Research Project).
• Executive Summary of Report.
• Introduction
• Body
• Recommendation and Conclusions of the Report.
• Appendices and References.

Every report writer needs to be accurate and professional while preparing a research report otherwise;, they may fail to get good grades and marks, which can directly impact their degree’s and career. The components mentioned earlier apply to the Technical report writing and are also strictly followed while making any research report.

Why is Online Technical Report Writing Service best?

• Organized and Researched Reports
• Time Delivery of Orders
• Hire a Technical Expert to make your Report
• These services are affordable
• The Clients can give suggestions and Tips
• Interactive Session with clients
• Ease of Burden and workloads
• Informative Reports are prepared
• Overall Improvement in Grades

These are some reasons why scholars and students should choose Online Technical Report Writing Service for their assignments and research reports to get better academic results. They are generally very competitive, which always increases the chances of continuous growth and development.
If you need technical report writing help, you can connect with academic assignment service provider agencies working day and night to prepare a better project in exchange for a reasonable amount you pay to them. Your assignment writer will make sure that the report is informative, organized, and free from plagiarism. They provide some great exclusive deals and offers to their new customers and clients and seek to make a healthy relationship with them.

#technical report writing #online report writing service #online technical report writing service #technical report writing help #assignment writer

Jest-silent-reporter: A Silent Reporter for Jest

Jest Silent Reporter

Custom reporter for Jest that only prints failed tests.

Installation

Using npm:

$ npm i --save-dev jest-silent-reporter

Using yarn:

$ yarn add --dev jest-silent-reporter

Usage

Jest CLI:

jest --reporters=jest-silent-reporter

Jest config:

{
  "reporters": ["jest-silent-reporter"]
}

Options

useDots: boolean

For large test suites, jest-silent-reporter can cause CI to fail due to having no output for some configured amount of time. Using the useDots option will output dots for each test file, similar to a dot reporter.

{
  "reporters": [["jest-silent-reporter", { "useDots": true }]]
}

Note: this config is also available as an environment variable JEST_SILENT_REPORTER_DOTS=true.

showWarnings: boolean

Warnings are supressed by default, use showWarnings to log them.

{
  "reporters": [["jest-silent-reporter", { "showWarnings": true }]]
}

Note: this config is also available as an environment variable JEST_SILENT_REPORTER_SHOW_WARNINGS=true.

showPaths: boolean

Sometimes it might come in handy to display the test suites' paths (i.e. when running tests in a terminal inside IDE for quicker file navigation).

{
  "reporters": [["jest-silent-reporter", { "showPaths": true }]]
}

Note: this config is also available as an environment variable JEST_SILENT_REPORTER_SHOW_PATHS=true.

Screenshots

All tests passed

Screenshot: all tests passed

Tests failed

Screenshot: some tests failed

Author: Rickhanlonii
Source Code: https://github.com/rickhanlonii/jest-silent-reporter 
License: MIT license

#javascript #jest #testing 

Gordon  Taylor

Gordon Taylor

1653644536

Jest-html-reporters: Reporter for Jest Test Framework

Jest reporter

Jest test results processor for generating a summary in HTML

example picture

Installation


 npm install jest-html-reporters --save-dev

Usage


Configure Jest to process the test results by adding the following entry to the Jest config (jest.config.json):

"jest": {
  ...,
  "reporters": [
    "default",
    "jest-html-reporters"
  ],
  ...
}

As you run Jest from within the terminal, a file called jest_html_reporters.html will be created within your root folder containing information about your tests.

Available Options

The options below are specific to the reporter.

Option Nameenv variables nameTypeDefaultDescription
publicPathJEST_HTML_REPORTERS_PUBLIC_PATHstring''specify the base path
filenameJEST_HTML_REPORTERS_FILE_NAMEstringjest_html_reporters.htmlFilename of saved report
Applies to the generated html
expandJEST_HTML_REPORTERS_EXPANDBooleanfalsespecify whether default expand all data
pageTitleJEST_HTML_REPORTERS_PAGE_TITLEstringReportspecify header and page title
logoImgPathJEST_HTML_REPORTERS_LOGO_IMG_PATHstringundefinedspecify path of the image that will be displayed to the right of page title
hideIconJEST_HTML_REPORTERS_HIDE_ICONbooleanfalsehide default icon
customInfosJEST_HTML_REPORTERS_CUSTOM_INFOSarrayundefinedshow some custom data info in the report, example value [ {title: 'test1', value: 'test1'}, {title: 'test2', value: 'test2'}], you can also set value to a environment variable JEST_HTML_REPORTERS_CUSTOM_INFOS, see detail in #32
testCommandJEST_HTML_REPORTERS_TEST_COMMANDstring"npx jest"copy command content to quickly run test file
openReportJEST_HTML_REPORTERS_OPEN_REPORTjsonin dev=true, rest=falseoptions for npm package open
env variable support onlyJEST_HTML_REPORTERS_TEMP_DIR_PATHstringsystem default temporary directorypath to a temporary folder with attachments
failureMessageOnlyJEST_HTML_REPORTERS_FAILURE_MESSAGE_ONLYbooleanfalseshow failure test suites messages only in HTML report
enableMergeDataJEST_HTML_REPORTERS_ENABLE_MERGE_DATAbooleanfalsefor default enable merge test data feature
dataMergeLevelJEST_HTML_REPORTERS_DATA_MERGE_LEVELnumber1default merge test data level
inlineSourceJEST_HTML_REPORTERS_INLINE_SOURCEbooleanfalseOption to save report in a single combined HTML file #184

example add config options

...,
"reporters": [
  "default",
  ["jest-html-reporters", {
    "publicPath": "./html-report",
    "filename": "report.html",
    "openReport": true
  }]
]

some features.

  • Collapsable Test Groups

This feature regrading to #37, if a test file has many test cases, here will show a Merge Data checkbox on the expanded table. You can check it to merge data and set the merge level to control how to combine those data.

For Example merge data example

  • Attach screenshot to report

This feature regrading to #36, this package will a new method named addAttach.

interface IAddAttachParams {
    attach: string | Buffer;
    description: string;
    context: any;
    bufferFormat: string;
}

There are three params of this method, description is easy to understand. The param attach referring to the image, you can pass a buffer or string, if it was a buffer the package will help you create a dir named jest-html-reporters-attach and save that buffer as a jpg image in it under the publicPath. if you have already saved the image, just pass the image's path as the attach param. context is an optional parameter. Here can be specified context (default is this.global).

Here is an Example with puppeteer.

// Example attach with **buffer**
const { addAttach } = require("jest-html-reporters/helper");
const puppeteer = require("puppeteer");

describe("just examples", () => {
  test("test buffer", async () => {
    const browser = await puppeteer.launch();
    const page = await browser.newPage();
    await page.goto("https://www.google.com");
    const data = await page.screenshot();
    await browser.close();
    await addAttach({
      attach: data,
      description: 'img 1',
    });
    await addAttach({
      attach: await fs.readFileSync('./test.mp4'),
      description: 'img 1',
      bufferFormat: 'mp4',
    });
    expect(1).toBe(1);
  });
});
// Example attach with **string**
const { addAttach } = require("jest-html-reporters/helper");
const puppeteer = require("puppeteer");
const path = require("path");

describe("just examples", () => {
  test("case string", async () => {
    const filePath = path.resolve(__dirname, "./test.jpg");
    await browser.close();
    await addAttach({
      attach: filePath,
      description: 'test google 2',
    });

    await addAttach({
      attach: 'www.example.com/test.mp4',
      description: 'test video 2',
    });
    expect(1).toBe(2);
  });
});

it will show like this example

  • Attach a message to the report

This feature is in regards to #63 & #64. It allows you to add a message or log something to the html report with addMsg()

/**
 * @param {object} options - options object
 * @param {string} options.message - message string
 * @param {any} [options.context] - custom context (optional)
 */
const addMsg = async ({ message, context }) => { ... }

Only one parameter is required. If you stringify an object like this JSON.stringify(object, null, 2), the object will be prettified. context is an optional parameter. Here can be specified context (default is this.global).

Here is an Example with Nightmare.

const { addAttach, addMsg } = require("jest-html-reporters/helper");
const Nightmare = require("nightmare");

describe("Yet another example", () => {
  test("Both addAttach & addMsg with failure", async () => {
    const nightmare = Nightmare({ show: true });
    await addMsg({ message: JSON.stringify({ won: 1, too: 2 }, null, 2) });
    await nightmare.goto("https://duckduckgo.com");
    const s1 = await nightmare.screenshot();
    await addAttach(s1, "test duckduckgo 1");
    await nightmare.end();
    await addMsg({ message: JSON.stringify(process, null, 2) });
    expect(2).toEqual(1);
  }, 20000);
  test("addMsg with success", async () => {
    await addMsg({ message: JSON.stringify({ free: 3, for: 4 }, null, 2) });
    expect(2).toEqual(2);
  });
});

example

Message still displays without screenshots and with a successful test example

Author: Hazyzh
Source Code: https://github.com/Hazyzh/jest-html-reporters 
License: MIT license

#javascript #jest #testing #html