0
HTML 태그 <Tr></Tr>
을 테스트하려고합니다. 여기 내 코드는 다음과 같습니다 여기차이 다른 구성 요소 내의 구성 요소 유형을 테스트하십시오.
const children = (<h1>Test</h1>);
const renderComponent =() => shallow(
<Table>
<Tr>
{children}
</Tr>
</Table>
);
describe("<Tr />",() => {
it("should render a <Tr> tag within a <Table> tag",() => {
const renderedComponent = renderComponent();
expect(renderedComponent.type()).toEqual("tr");
});
});
문제가 내 테스트가 renderedComponent
의 유형으로 태그 <Table>
을 대상으로하므로 실패한 테스트를 반환합니다.
expect
테스트에서 첫 번째 <Table>
이 아닌 두 번째 태그 <Tr>
을 어떻게 찾을 수 있습니까?
.
import styled from "styled-components";
const Table = styled.table`
border: 1px solid black;
border-collapse: collapse;
width: 100%
`;
export default Table;
따라서, 구성 요소는 자체 태그로 제한되며 아직 아무것도 포함되어 있지 않습니다.
야 미안, 내 설명을 충분히 정확하지해야합니다. 나는 React 구성 요소를 만들고 있는데, 그게 내 HTML 태그가 대문자로 시작하는 이유이다. 또한, 첫 번째 테스트에서'renderedComponent.type() .toequality ('table');이 아닌'renderedComponent.type()) .toqual ('tr'); –
그래서'Table'과'Tr' 컴포넌트의 내용을 붙이십시오. 'table' 대'tr' :이 문장을 어떻게 이해해야할지 모르겠다.'그러나, 이제는 분명히 틀린 첫 번째 태그를 테스트한다. '그래서 나는 당신이하려는 것을 추측했다. – luboskrnac
죄송합니다. 저는 코드 작성을 배우는 데 어려움을 겪고 있습니다. 따라서 제 질문에 정확하게 답해야합니다. 내 Chai 테스트 (첫 번째 it())에서 Tr 태그를 테스트해야하며, 두 번째 HTML 태그를'renderedComponent'에서 'Tr'으로 지정하고이 태그가
관련 문제