Semantic React UI library을 사용 중입니다.효소 얕은 및 구성 요소 기반 UI로 테스트하는 방법은 무엇입니까?
<div className="EditTemplateMetaDataPage">
<Page title={...}>
<Container text>
<Segment>
<Grid columns={1}>
<Grid.Column>
<Button ...>
이 많은 사람들에게 흥미로운 일이 될 수도 있습니다 비슷한 재질 UI 또는 부트 스트랩 반작용과 같은 구성 요소 라이브러리 반응 사용 : 같은 코드는 종종 보인다.
우리는 한 단계 깊은 렌더링 때문에 우리가 정말 깊은 Button
매장 필요가있는 동안 우리는 현재, 단지 시각적 도우미 테스트에서, 제 1 <Grid>
구성 요소, 대신 shallow
의 enzyme
라이브러리 mount
를 사용 대신.
성능 때문에 피하기 위해 중복 테스트shallow
을 사용하는 것이 좋습니다.
우리는 즉, 시각적 구성 요소에 대한 전용 CSS를 사용하여
<div className='ui one column grid'>
대신 등장
<Grid columns={1}>
그러나 이것이 최적의 방법인지는 확실하지 않습니다. 다른 아이디어가 있습니까? 이 경우 shallow(...)
을 어떻게 사용할 수 있습니까?
것이다 별도로 구성 요소를 나누는 래퍼를 의미-UI-반응에 그들을 테스트를 그들 자신, 도움? 예를 들어, Semantic-UI 그리드 내부에 살고있는 카드 모양의 구조가있는 경우 별도의 Card 구성 요소로 분리하여 테스트하십시오. –
@DimitrisKaragiannis와 비슷한 해결책을 생각해 보았습니다! 이것은 React 구성 요소로 작업 할 때 일반적으로 가장 좋은 방법입니다. 문제는'WrapperComponent' **에 **이 'CardComponent'의 목록이 들어 있다는 것을 단언하기를 원한다고 상상해보십시오. 다른 래퍼는'CardComponentList'라고합니다. 그리드에있는 한 불가능합니다. 'Grid','Segment' 등이 기본 레이아웃 구조화에 사용되는 한, 이러한 것들은 매우 희소식이됩니다. 나는 네이티브 DOM 요소를 사용한다고 생각합니다. 이것은 또한 기능적 설계와 순수 설계 사이의 관심사를 명확하게 구분합니다. – headphones