blanket.js
A seamless JavaScript code coverage library. Blanket.js is a code coverage tool for JavaScript that aims to be easy to install, easy to use, and easy to understand. Blanket.js can be run seamlessly or can be customized for your needs. JavaScript code coverage compliments your existing JavaScript tests by adding code coverage statistics (which lines of your source code are covered by your tests). Parsing the code using Esprima and node-falafel, and instrumenting the file by adding code tracking lines. Connecting to hooks in the test runner to output the coverage details after the tests have been completed. A Grunt plugin has been created to allow you to use Blanket like a "traditional" code coverage tool (creating instrumented copies of physical files, as opposed to live-instrumenting). Runs the QUnit-based Blanket report headlessly using PhantomJS. Results are displayed on the console, and the task will cause Grunt to fail if any of your configured coverage thresholds are not met.
Learn more
Early
Early is an AI-driven tool designed to automate the generation and maintenance of unit tests, enhancing code quality and accelerating development processes. By integrating with Visual Studio Code (VSCode), Early enables developers to produce verified and validated unit tests directly from their codebase, covering a wide range of scenarios, including happy paths and edge cases. This approach not only increases code coverage but also helps identify potential issues early in the development cycle. Early supports TypeScript, JavaScript, and Python languages, and is compatible with testing frameworks such as Jest and Mocha. The tool offers a seamless experience by allowing users to quickly access and refine generated tests to meet specific requirements. By automating the testing process, Early aims to reduce the impact of bugs, prevent code regressions, and boost development velocity, ultimately leading to the release of higher-quality software products.
Learn more
RKTracer
RKTracer is a code-coverage and test-analysis tool that enables teams to assess the quality and completeness of their testing across unit, integration, functional, and system-level testing, without altering a single line of application code or build workflow. It supports instrumentation across host machines, simulators, emulators, embedded devices, and servers, and covers a broad array of programming languages, including C, C++, CUDA, C#, Java, Kotlin, JavaScript/TypeScript, Golang, Python, and Swift. It provides detailed coverage metrics such as function, statement, branch/decision, condition, MC/DC, and multi-condition coverage, and even supports delta-coverage reports to show which newly added or modified portions of code are already covered. Integration is seamless; simply prefix your build or test command with “rktracer”, run your tests, then generate HTML or XML reports (for CI/CD systems or dashboards like SonarQube).
Learn more
jscoverage
jscoverage tool, both node.js and JavaScript support. Enhance the coverage range. Use mocha to load the jscoverage module, then it works. jscoverage will append coverage info when you select list or spec or tap reporter in mocha. You can use covout to specify the reporter, like HTML, and detail. The detail reporter will print the uncovered code in the console directly. Mocha runs test case with jscoverage module. jscoverage will ignore files while listing in covignore file. jscoverage will output a report in HTML format. jscoverage will inject a group of functions into your module exports. default jscoverage will search covignore in the project root. jscoverage will copy exclude files from the source directory to the destination directory.
Learn more