
Security News
PEP 810 Proposes Explicit Lazy Imports for Python 3.15
An opt-in lazy import keyword aims to speed up Python startups, especially CLIs, without the ecosystem-wide risks that sank PEP 690.
cover-child-process
Advanced tools
NPM module to collect coverage data from tests that need to spawn NodeJS child processes. Eg. end to end tests and/or tests on command line interfaces
Implements spawn
and exec
functions that wrap a target NodeJS script that has already been instrumented for coverage data, collects the coverage data and merges it with the coverage data already collected in the parent process.
Currently only supports files instrumented with Blanket. However, plugins for other similar instrumentation implementations can easily be created following the interface used for Blanket.
Install and save to your devDependencies
npm install --save-dev cover-child-process
Use as you would the standard child_process.exec
and child_process.spawn
methods.
var ChildProcess = require('cover-child-process').ChildProcess;
var Blanket = require('cover-child-process').Blanket;
// Use the constructor to tell the library how the source has been instrumented
var childProcess = new ChildProcess(new Blanket());
var child = childProcess.exec(
'node ../lib-cov/cli.js init something', {
cwd: '../fixtures/test-scenario'
}, function (error, stdout, stderr) {
// Test output, etc, then done
}
);
NB. If the command does not begin with node
then it will be passed directly to child_process
without capturing coverage data
var ChildProcess = require('cover-child-process').ChildProcess;
var Blanket = require('cover-child-process').Blanket;
// Use the constructor to tell the library how the source has been instrumented
var childProcess = new ChildProcess(new Blanket());
var server = childProcess.spawn(
'node', [
'../lib-cov/server.js',
'8080'
], {
env: process.env
}
);
server.stdout.on('data', function (data) {
// When server has started run tests, then kill the child process
server.kill();
});
NB. If the supplied command is not node
then it will be passed directly to child_process
without capturing coverage data
NNB. The spawned process must be killed with the default SIGTERM
signal for the coverage data to be collected
Copyright © 2014 Peter Halliday
Licensed under the MIT license.
FAQs
Collect coverage data from child processes
The npm package cover-child-process receives a total of 11 weekly downloads. As such, cover-child-process popularity was classified as not popular.
We found that cover-child-process demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
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.
Security News
An opt-in lazy import keyword aims to speed up Python startups, especially CLIs, without the ecosystem-wide risks that sank PEP 690.
Security News
Socket CEO Feross Aboukhadijeh discusses the recent npm supply chain attacks on PodRocket, covering novel attack vectors and how developers can protect themselves.
Security News
Maintainers back GitHub’s npm security overhaul but raise concerns about CI/CD workflows, enterprise support, and token management.