Jest (UI Testing Tool Evaluation Criteria)
- Speed - Fast
- Reliability - High
- Relevance - High
- Mocking facility - library can be mocked or functions that make HTTP requests. or via libs like `nock` etc
- Cost to migrate/rebuild existing tests. based on module: it can be few weeks and months (e.g ui-users) for modules that follow Page patterns (huge components).
- no
- yes (3 files in parallel, but not test cases)
- yes
React Testing Library with jest
its props/cons is a reflection of jest pros/cons.
On top of that:
- is a light-weight solution for testing React components
- provides light utility functions in a way that encourages devs to write tests that closely resemble how web pages are used
- rather than dealing with instances of rendered React components, tests will work with actual DOM nodes.
- finding form elements by their label text (just like a user would), finding links, and buttons from their text (like a user would). It also exposes a recommended way to find elements by a
data-testid
as an "escape hatch" for elements where the text content and label do not make sense or is not practical.
Additional resources:
https://github.com/testing-library/user-event
https://testing-library.com/docs/react-testing-library/intro
https://blog.sapegin.me/all/react-testing-3-jest-and-react-testing-library/
Bigtest
Pros
- Used by FOLIO community
...