šŸš€ Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more →
Socket
Sign inDemoInstall
Socket

pactum-swagger-coverage

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

pactum-swagger-coverage

Swagger api coverage report for pactum tests

2.0.3
latest
Source
npm
Version published
Maintainers
1
Created
Source

pactum-swagger-coverage

Build Downloads Size Platform

JSON swagger/openapi3 coverage reporter for Pactum tests. It's capable of reading the swagger/oas3 definitions from either swagger.yaml or swagger.json or openapi3.yaml (served on a http server endpoint).

Installation

npm install --save-dev pactum pactum-swagger-coverage

Usage

const pactum = require('pactum');
const psc = require('pactum-swagger-coverage');
const reporter = pactum.reporter;

// global before block
before(() => {
  reporter.add(psc);
});

// global after block
after(() => {
  return reporter.end();
});

Reporter Options

const psc = require('pactum-swagger-coverage');

// name of the report file - defaults to "swagger-cov-report.json"
psc.reportFile = 'report-name.json';

// folder path for the report file - defaults to "./reports"
psc.reportPath = './reports-path';

/** 
* base path - defaults to `basePath` for swagger 2.0/openapi2 and first server url 
* or empty if either of them doesn't exist or not set explicitly
*/ 
psc.basePath = '/api/server/v1'; 

// Swagger json url of the server - defaults to ""
psc.swaggerJsonUrl = "http://localhost:3010/api/server/v1/json";

// Swagger Yaml file path - defaults to ""
psc.swaggerYamlPath = './tests/testObjects/swagger.yaml';

Report Json Output (example)

{
  "basePath": "/api/server/v1",
  "coverage": 0.2,
  "coveredApiCount": 1,
  "missedApiCount": 4,
  "totalApiCount": 5,
  "coveredApiList": [
    "/getallninjas"
  ],
  "missedApiList": [
    "/health",
    "/getninjabyid/{id}",
    "/getninjabyname/{name}",
    "/getninjabyrank/{rank}"
  ]
}

Note: Either 'swaggerJsonUrl' or 'swaggerYamlPath' should be provided for reporter to work.

Notes

Read more about Pactum here.

Inspired by swagger-coverage-postman.

API Testing

Keywords

pactum

FAQs

Package last updated on 22 Nov 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts