React Testing Libraryを使ってみた(超基礎編)
はじめに
React Testing Libraryの超基礎編という事で、小さいコンポーネントのテストをしてみます。
テストツールはJestを使用しています。
React Testing Libraryとは
公式ドキュメントでは「ユーザー中心の方法でUIコンポーネントをテストするのに役立ちます」とあり、
・画面表示
・テキストボックス等への入力
・ボタンの押下
などのテストをするためのライブラリです。
テスト
テスト対象コンポーネント
今回のテスト対象のコンポーネントです。ファイル名は「Hello.jsx」とします。
「Hello React!」という文字が表示されているだけのものです。
import React from "react";
const Hello = () => {
return (
<div>
Hello React!
</div>
);
};
export default Hello;
テストコード
テストコードを記述するファイル名は「[テスト対象].test.jsx」なので、「Hello.test.jsx」となります。
以下が「Hello React!」という文字が表示されて事を確認するテストコードです。
import React from "react";
import { render, screen } from "@testing-library/react";
import Hello from "./Hello";
describe("画面表示", () => {
it("Hello React! が表示されている事", () => {
render(<Hello />);
expect(screen.getByText("Hello React!")).toBeInTheDocument();
});
});
テストコードの解説です。
describe:テストスイートの内容を記述します。
describe("画面表示", () => {
});
it:テストケースの内容を記述します。
it("Hello React! が表示されている事", () => {
});
テスト対象のコンポーネントを内容を取得しています。
render(<Hello />);
コンポーネントに「Hello React!」という文字列が存在する事をテストしています。
expect(screen.getByText("Hello React!")).toBeInTheDocument();
テスト実行
下記のコマンドでテストを実行すると、テストが正常に終了する事が確認できます。
npm test -p Hello.test.jsx
ディスカッション
コメント一覧
まだ、コメントがありません