Default setup for testing JavaScript/React packages with Jest
Install using
npm install @wisersolutions/test-js
Add a test script to your package.json
{
"scripts": {
"test": "test-js"
}
}
or just run it using npx test-js
. This simply launches jest
with a default setup tailored
for testing packages containing React components - with enzyme
and jest-enzyme
to automatically
include React
, and the render functions in the global scope and add enzyme-matchers
. Your
component tests can now be as simple as:
describe('Component', () => {
it('renders with defaults', () => {
expect(shallow(<Component />)).toMatchSnapshot()
})
})
If you need to customise the configuration, use @wisersolutions/test-js/lib/defaultConfig.js
as defaults.
If you also need to extend the test framework setup, don't forget to include @wisersolutions/test-js/lib/setup.js
from your setup file or simply extend setupFilesAfterEnv
config instead of replacing it.
Install dependencies using:
npm install
After you modify sources, run the following (or set up your IDE to do it for you):
- format the code using
npm run format
- lint it using
npm run lint
- test it using
npm test
and fix the errors, if there are any.
Publishing is done in two steps:
- Create a new version tag and push it to the repository:
npm version <patch|minor|major> git push --follow-tags
- Build and publish the new version as a npm package:
npm publish --access public