I'm trying to understand whether or not some DOM removed from rendered component. So how do I do current component HTML output into VSCode console just to see what actually rendered. Here is my simple test. I want to do something like: console.log(renderer.<page content>)
import { render, fireEvent, waitForElementToBeRemoved } from '@testing-library/react'
it ('test', async () => {
const renderer = render(<MyComponent />)
fireEvent.click(renderer.getByText('Click to Hide'))
await waitForElementToBeRemoved(() => renderer.getByText('text to hide'))
})
You can do something like that:
import { render, fireEvent, waitForElementToBeRemoved, prettyDOM } from '@testing-library/react'
it ('test', async () => {
const renderer = render(<MyComponent />)
...
console.log(prettyDOM(renderer.container.firstChild))
screen.debug()
is a quick way to do it. Most tests usually have screen imported to begin with.
For convenience screen also exposes a debug method in addition to the queries. This method is essentially a shortcut for console.log(prettyDOM()). It supports debugging the document, a single element, or an array of elements.
Docs
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With