testdouble.js (AKA td.js)
Sinon.JS
Our great sponsors
testdouble.js (AKA td.js) | Sinon.JS | |
---|---|---|
4 | 28 | |
1,407 | 9,556 | |
0.3% | 0.4% | |
6.5 | 8.4 | |
about 1 month ago | about 1 month ago | |
JavaScript | JavaScript | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
testdouble.js (AKA td.js)
-
Cannot figure out how to mock ES6 modules for a Node AWS Lambda
ESM modules need custom loaders for mocking. Testsouble (https://www.npmjs.com/package/testdouble) was one of the first frameworks to support it AFAIK and a great type-safe option.
-
TypeScript testing
Alternative is using testdouble with `td.object()` https://www.npmjs.com/package/testdouble
-
Testing Without Mocks
I’m not sure I manage to follow the author correctly, but to me it seems that by “mock” they strictly refer to external mocking libraries, in the sense of JS’s `testdouble` [1] or Java’s `Mockito` [2]. The fake object as returned by `LoginClient.createNull().getUserInfo(...)` appears to be a “Nullable” for them.
[1] https://www.npmjs.com/package/testdouble
-
What you need to know about ES modules in Node.js
If you need an alternative for mocking, testdouble.js has full ES module support thanks to some excellent work by Gil Tayar.
Sinon.JS
-
Unit Testing in Node.js and TypeScript: A Comprehensive Guide with Jest Integration
If you are using a mocking library, such as sinon, jest-mock, or ts-mockito, make sure that it is compatible with Jest. You may need to install additional packages or configure them in your configuration file. For example, to use sinon with Jest, you can install the sinon-jest package and add the following to your configuration file:
-
Express API Testing
Mocha is a test runner, Chai is an assertion library, Sinon is a mocking library, this normally the combination you would need to use if you choose mocha, but there are others.
-
Alternative to AWS Mock
Instead, use pure functions + dependency inject your stubs (e.g. parameter to function). Also note, no need for Sinon or some other test double library. JavaScript is so good nowadays to easily make objects/classes/functions or any combination thereof on the fly that are terse.
-
Unit testing: What to use, and how?
I've had some good experiences with Ava + Sinon. I've personally disliked Jest because it seemed to do some weird trickery in the background that prevented me from using ES modules.
-
Can AI help me write tests on legacy code?
🤖 You can use the Mocha testing framework with the Chai assertion library to write tests for your Express controller. You can also use the Sinon library to mock the database calls. This will allow you to test the controller without actually making a call to the database. You can also use the SuperTest library to make HTTP requests to the controller and test the response.
-
Need help writing a jest test that mocks an API call which will update state
You can use sinon js to create a mock version of your http library (axios) that responds with the data you’re expecting.
-
Unit testing with React and Cypress
Assertions are the checkpoints of our test block that confirm if an automated test has passed or failed. Cypress bundles the Chai, jQuery, and Sinon.JS libraries for assertions. They check the desired, expected application in which the test is running. A complete listing of assertions can be found in the documentation here.
-
When to use DI?
ES module is basically a "class" that you inject dependencies into through imports. And for tests you just use something like sinon to swap module dependencies for mocks.
-
How to test a function that uses moment to format a date ? usimg karma
You can use a tool like sinon to pass in your own function instead of the real moment library. From there you can write tests that ensure moment was invoked appropriately.
-
Typescript boilerplate test configuration with mocha, chai and sinon
Let's configure tests with mocha, chai and sinon on Typescript in a few steps.
What are some alternatives?
jest - Delightful JavaScript Testing.
tape - tap-producing test harness for node and browsers
chai - BDD / TDD assertion framework for node.js and the browser that can be paired with any testing framework.
loadtest - Runs a load test on the selected URL. Fast and easy to use. Can be integrated in your own workflow using the API.
proxyquire - 🔮 Proxies nodejs require in order to allow overriding dependencies during testing.
Cucumber.js - Cucumber for JavaScript
Playwright - Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API.
nyc - the Istanbul command line interface
Enzyme - JavaScript Testing utilities for React
mocha - ☕️ simple, flexible, fun javascript test framework for node.js & the browser
tap - Test Anything Protocol tools for node