reactjs / reactjs/react.dev

Update react testing doc section for react 18

Aberta
#5,147 0 comentários 0 reações 1 responsável Ver no GitHub

@eps1lon já está trabalhando nisso.

Desde 4/10/2022.

Linguagem predominante
JavaScript
Estrelas
11.8k
Forks
7.9k
Merge médio
1d 11h
PRs com merge (30d)
11

Descrição

I cannot, for the life of me, figure out how to adapt the setup/teardown section of the current react documentation to React 18, I cannot find code testing examples on the React website, or anywhere else I have looked for React 18.

I went to this link, and adapted my beforeEach / afterEach functions according to the instructions:

let container = null;
let root = null;
beforeEach(() => {
    container = document.createElement('div');
    root = createRoot(container)
})

afterEach(() => {
    root.unmount()
    container = null;
    root = null;
})

it("renders without a name", () => {
    ...
    root.render(<CreateAccount
        ...
        loginLink={''}/>);

    const nodeList = root.querySelectorAll('input')
    nodeList.forEach((element, index) => {
        expect(element.value).toBe(textArray[index]);
    })
    expect(nodeList.length).toBe(3);
});

However, I get the following error when I try to run my tests:

root.querySelectorAll is not a function

This test works just fine when using the documentation for the older version of React, and when I run container.querySelectorAll(). I tried running container.querySelectorAll() as well, and it returns zero elements. What am I doing wrong here, and where can I find test recipes for React 18?

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.