jest-dom VS user-event

Compare jest-dom vs user-event and see what are their differences.

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
jest-dom user-event
22 5
4,284 2,113
0.9% 0.8%
7.0 5.6
4 days ago about 2 months ago
JavaScript TypeScript
MIT License 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.

jest-dom

Posts with mentions or reviews of jest-dom. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-15.

user-event

Posts with mentions or reviews of user-event. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-09-10.
  • How do I test a button that change a state with jest ?
    1 project | /r/reactjs | 14 Dec 2022
    You probably want to be using user-event instead of fireEvent.
  • Mocking setTimeout with Jest
    2 projects | dev.to | 10 Sep 2022
    With userEvent it is different. Since version 14.0.0 the APIs always return a Promise. Because of that we need to make the whole test async and await on clicking with userEvent.
  • BDD and TDD testing for React-Node App
    1 project | /r/softwaretesting | 16 Feb 2022
    I just learned to do TDD by react testing library + jest + user event https://github.com/testing-library/user-event
  • Django, HTMX and Alpine.js: Modern Websites, JavaScript Optional
    4 projects | news.ycombinator.com | 23 Nov 2021
    I just tried running WinDirStat on the `node_modules` folder in a Create-React-App project I had lying around. Total size was 234 MB. Of that, 129MB was JS files. By far the biggest piece was TypeScript, which has 45MB of .js in 6 files making up its parsing and IDE language service implementation.

    Beyond that, the breakdown is:

    - .ts source files: 25MB

    - Sourcemaps: 23MB

    - Markdown: 15MB

    - JSON: 10MB

    It also looks like there's a 12MB Linux binary that was only in there as a publishing accident for the `user-event` library that has since been resolved ( https://github.com/testing-library/user-event/issues/266 ).

    Or, take Redux Toolkit, which I maintain. If you look at https://unpkg.com/browse/@reduxjs/[email protected]/ , the published package for our current version, it adds up to about 10MB on disk. But, that's because we ship three separate entry points (RTK core, RTK Query UI-agnostic core, RTK Query with React-specific additions), and for each entry point we compile the code to multiple file formats (CommonJS, ESM legacy, ESM modern, ESM with "dev" and "prod" already built in, UMD dev, UMD production), and each of those has sourcemaps. The actual amount of code that ends up in your bundle is about 20KB min+gz.

    So, it's a combination of many things: TS itself is big, libraries typically publish packages containing both the original source code plus multiple build artifacts to run in different environments, and packages also include various metadata and other files as well.

  • Comparing Enzyme with React Testing Library
    3 projects | dev.to | 4 Jan 2021
    To get away from testing our code implementation and get closer to testing how the application is actually used, we turn once again to React Testing Library. Instead of creating fake DOM event objects and simulating various change events, we have the ability to mimic how users would actually interact with the application using userEvent's, which are provided by the user-event library.

What are some alternatives?

When comparing jest-dom and user-event you can also consider the following projects:

jest - Delightful JavaScript Testing.

testing-with-enzyme

msw - Seamless REST/GraphQL API mocking library for browser and Node.js.

django-unicorn - The magical reactive component framework for Django ✨

Cypress - Fast, easy and reliable testing for anything that runs in a browser.

angular-testing-library - 🐙 Simple and complete Angular testing utilities that encourage good testing practices

jest-cheat-sheet - Jest cheat sheet

callbag-jsx - callbags + JSX: fast and tiny interactive web apps

husky - Git hooks made easy 🐶 woof!

blog_mocking_settimeout_with_jest - Mocking setTimeout with Jest

jest-axe - Custom Jest matcher for aXe for testing accessibility ♿️🃏

testing-with-react-testing-library