사이프레스가 시험을 더 쉽고 즐겁게 만든다는 것은 의심의 여지가 없다. 하지만 사이프레스는 스펙이 많으면 속도가 느릴 수 있고, 방문() 명령을 매번 사용합니다.
방문() 명령을 호출할 때마다 응용 프로그램이 새로 고쳐지고 초기화되며 실제 테스트가 실행되는 데 몇 초 정도 걸릴 수 있습니다.
E2E 사양의 성능을 크게 높이기 위해 경로를 지정하고 빈 페이지로 이동한 다음 원래 경로로 돌아가는 명령을 구축했습니다. 우리가 어떻게 했는지 한 번 보자.
우선 Angular router navigationByUrl() 메소드를 사이프레스에 노출시켜야 합니다. Google에서 이와 유사한 방법을 찾을 수 있습니다.
네, 이 코드는 작동합니다. 하지만, 저는 별로 좋아하지 않아요. 첫째, 저는 애플리케이션이 사이프레스를 인지해야 한다고 생각하지 않습니다. 둘째로, 이 코드는 나무를 흔들지 않습니다. 이 예에서는 세 줄이 있지만 시간이 지남에 따라 더 많은 피쳐를 추가할 수 있습니다.
위의 문제를 해결하기 위해 Angular의 환경 기능을 사용하겠습니다. 이 기능을 가진 모듈은 environment.e2e 파일로 노출됩니다.
이제 애플리케이션에서 envModules를 사용할 수 있습니다.
이 속성은 다른 환경에서 빈 배열로 초기화됩니다. 한편, 동일한 기술을 사용하여 특정 환경 종속 모듈을 초기화할 수 있습니다. 예를 들어 개발 시 dev-tools만 로드합니다.
이제 softVisit() 명령을 사이프레스에서 만들 수 있습니다.
이제 visit() 명령은 한 번만 사용할 수 있으며 나머지 부분에는 softVisit()을 사용할 수 있습니다.
기능이 분리되지 않고 탐색 시 상태가 지속되는 경우, softVisit()를 수행하기 전에 visit() 명령을 사용하거나 상태를 정리하는 두 가지 옵션이 있습니다.
Angular와 JS에 대해 자세히 알아보려면 Medium 또는 Twitter에서 저를 팔로우하십시오!
'javascript' 카테고리의 다른 글
React 라우터를 사용하여 프로그래밍 방식으로 탐색 (0) | 2022.01.12 |
---|---|
Redux 연결() 기능 살펴보기 (0) | 2022.01.12 |
FP 패러다임. 내가 배운 것. (0) | 2022.01.12 |
개발자들이 은유를 사랑하는 이유 (1) | 2022.01.12 |
각도의 파이프 (0) | 2022.01.12 |
댓글