Cypress Testing Library
Cypress Testing Library allows the use of dom-testing queries within
Cypress end-to-end browser tests.
Usage
Cypress Testing Library extends Cypress's cy commands.
Add this line to your project's cypress/support/commands.js:
You can now use all of DOM Testing Library's findBy, findAllBy, queryBy
and queryAllBy commands off the global cy object.
See the DOM Testing Library docs for reference.
Note: the
get*queries are not supported because for reasonable Cypress tests you need retryability andfind*queries already support that.query*queries are no longer necessary since v5 and will be removed in v6.find*fully support built-in Cypress assertions (removes the only use-case forquery*).
With TypeScript
Typings should be added as follows in tsconfig.json:
You can find all Library definitions here.
Examples
To show some simple examples (from cypress/integration/find.spec.js):
Cypress Testing Library supports both jQuery elements and DOM nodes. This is
necessary because Cypress uses jQuery elements, while DOM Testing Library
expects DOM nodes. When you pass a jQuery element as container, it will get
the first DOM node from the collection and use that as the container parameter
for the DOM Testing Library functions.