expect.js
Minimalistic BDD-style assertions for Node.JS and the browser. (by Automattic)
proxyquire
🔮 Proxies nodejs require in order to allow overriding dependencies during testing. (by thlorenz)
Our great sponsors
expect.js | proxyquire | |
---|---|---|
- | 4 | |
2,101 | 2,741 | |
0.0% | - | |
0.0 | 0.0 | |
over 1 year ago | over 1 year ago | |
JavaScript | JavaScript | |
- | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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.
expect.js
Posts with mentions or reviews of expect.js.
We have used some of these posts to build our list of alternatives
and similar projects.
We haven't tracked posts mentioning expect.js yet.
Tracking mentions began in Dec 2020.
proxyquire
Posts with mentions or reviews of proxyquire.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-12-17.
-
Best practices for writing testable ES6 modules
Take a look at proxyquire: https://www.npmjs.com/package/proxyquire - they do some fancy magic to allow you to stub es module imports.
-
AWS Lambda Functions (Node.js) - Unit testing using Mocha and Chai
Now that we know how to call/execute a lambda function in our local. Let us learn about mocking the dependencies inside the lambda function. These dependencies can be any third-party libraries or DB call or even an API call. To override and mock these dependencies we can use proxyquire package.
-
Don't mock modules
I have been wary of this from when it first came about with rewire and similar libraries. As time has gone on my opinion has only strengthened, and with jest actively embracing mocking modules, I feel like nobody has even bothered to make a counter argument.
-
Is this type of monkeypatching possible in js?
If you move foo to a different file and use something like proxyquire, you can override the require from that file to foo.js and sub in something else in the test.
What are some alternatives?
When comparing expect.js and proxyquire you can also consider the following projects:
chai - BDD / TDD assertion framework for node.js and the browser that can be paired with any testing framework.
Sinon.JS - Test spies, stubs and mocks for JavaScript.
autochecker - ♻️ Test your libraries in many different versions of NodeJS, Ruby, Java and many other languages
Enzyme - JavaScript Testing utilities for React
WebdriverIO - Next-gen browser and mobile automation test framework for Node.js
Nightmare - A high-level browser automation library.
zora - Lightest, yet Fastest Javascript test runner for nodejs and browsers