inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

따라하며 배우는 리액트 테스트 [2023.11 업데이트]

Summary 페이지 Form 구현

getByrole을 통해 얻은 htmlElement 객체에 prefix에 aria

449

minje621

작성한 질문수 6

2

안녕하세요 john ahn님. 

강의를 수강하면서 궁금한 점이 있어 여쭙니다.

저는 react, typescript 환경으로 tdd 강의를 수강하고 있는데요.

코드를 따라 치던 중 getByRole이 HTMLelement 객체를 반환하는데 checked랑 disabled는 없고 prefix에 aria가 붙은 aria-checked와 aria-disabled만 존재합니다.

질문은 prefix에 aria가 붙은 value를 사용해도 되는지가 궁금합니다. 

그리고 aria로 사용해도 될지 몰라서 matcher에다 

expect(checkbox).not.toBeChecked();

이런 코드를 작성했는데, 똑같은 효과를 얻을 수 있는 지도 궁금합니다. 감사합니다.

 

tdd React-Context 웹앱 react jest

답변 1

0

윤영훈

import { render, screen } from "@testing-library/react";
import OrderPage from "../OrderPage";

test("주문 확인을 위한 체크박스가 있고 타이틀은 '주문하려는 것을 확인하셨나요?' 입니다. ", () => {
  render(<OrderPage />);
  const checkbox = screen.getByRole("checkbox", {
    name: "주문하려는 것을 확인하셨나요?",
  }) as HTMLInputElement;
  expect(checkbox.checked).toEqual(false);

  const confirmButton = screen.getByRole("button", {
    name: "주문 확인",
  }) as HTMLButtonElement;
  expect(confirmButton.disabled).toBeTruthy();
});

저는 이런식으로 작성했습니다!

제공해주신 코드를 vscode에서 켜도 eslint가 안됩니다.

0

295

2

ERROR

0

217

1

테스트 시간을 단축할 수 있는 방법에 대하여 문의드립니다.

0

370

1

useState 배열값 변경의 경우 테스트 멈춤

0

424

1

test was not wrapped in act관련 질문

0

300

2

안녕하세요! 로딩 상태 테스트에 관련된 질문입니다.

0

400

1

강의 관련 내용 github 업로드 질문

0

312

1

이미지가 안보인다 하셔서 다시 질문드립니다.

0

420

2

Test Fail이 발생합니다 ㅠㅠ

0

363

1

스타일 컴포넌트 테스트 방법

0

441

1

msw 에러

0

646

1

toHaveTextContent 에러

0

455

1

msw안돼는사람

0

588

1

This could be because the text is broken up by multiple elements. 에러

0

1723

2

Type.test.js파일에 궁금한점이 생겼습니다

0

354

1

28강 수강 중 JSX 작성 방법에 대해 궁금해져서 질문 남깁니다!

0

405

1

toHaveTextContent 에서 에러가 자꾸 나는데 아무리 찾아도 잘 모르겠습니다.

0

618

2

aria-*

0

451

1

This XML file does not appear to have any style information associated with it. The document tree is shown below. 에러

1

14161

1

컴포넌트 props내려줄때 코드는 어떻게 해야하나요

0

252

0

es6 jest 미지원 오류 문의

0

866

1

test 여러 개 실행 - fail 발생

0

294

1

useMemo

0

286

1

axios 1.1.2 버전 issue ( SyntaxError: Cannot use import statement outside a module)

4

2237

5