テストランナー
16
function App() {
return (
);
}
import { render, screen } from "@testing-library/react";
import { expect, it, describe } from "bun:test";
import App from "./App";
describe("render a component", () => {
render();
it("exists img element has className='App-logo' and alt='logo'", () => {
const logoElement = screen.getByRole("img", { name: /logo/i });
expect(logoElement).not.toBeNull();
expect(logoElement.className).toBe("App-logo");
expect(logoElement.alt).toBe("logo");
});
it("exists link element has href='https://reactjs.org/'", () => {
const linkElement = screen.getByRole("link", { name: /learn react/i });
expect(linkElement).not.toBeNull();
expect(linkElement.href).toBe("https://reactjs.org/");
});
it("if exists link element has target='_blank' then it has rel='noopener noreferrer'",
() => {
const blankLinkElement = screen.getByRole("link", { target: "_blank" });
expect(blankLinkElement).not.toBeNull();
expect(blankLinkElement.rel).toBe("noopener noreferrer");
});
});