
개요
현재 프로젝트에서는 유닛 테스트를 Cypress 를 적용하여 진행하고 있다.
해당 의존성을 설치하고 환경을 구성하는 도중 git 이 꼬이는 상황이 벌어졌는데 기존에 잘 사용하던 Cypress Gui 를 여는 중 에러를 발생하여 상황 및 해결방법 을 기록한다.
에러 발생
실행 커멘드
npx cypress open
실행 후 발생한 에러는 아래와 같다.

이미 설치한 후임에도 불구하고 Cypress 의 의존성 을 못찾는 듯 하다.
이전에 설치되어 있던 의존성 이 git 이 꼬이면서 node_modules 내부에 남아있는 잔재가 있는 듯 했다.
해결 방안
첫번째로 진행한 부분은 node_modules , pnpm-lock.yaml 파일을 삭제하고 전체 재설치 하였으나 증상은 동일하였다.
구글링을 해보니 이와 같은 문제가 종종 있으며, 원인은 Cypress 기동 시 남겨져 있는 Cache 가 문제인듯 하다.
따라서, Cypress Cache 를 제거하고 다시 Install 을 해보았다.
실제 node_modules 내 Cypress 의존성을 까보면 cache 를 clear 할 수 있는 함수를 역시나 만들어 놓은것을 알 수 있다.
/**
* Path: node_modules/lib/cli.js
*/
...
const cache = require('./tasks/cache');
// patch "commander" method called when a user passed an unknown option
// we want to print help for the current command and exit with an error
...
/**
* Path: node_modules/lib/tasks/cache.js
*/
...
const clear = () => {
return fs.removeAsync(state.getCacheDir());
};
...해당 함수를 통해서 cache 를 날리고 다시 install 을 하였다.
./node_modules/.bin/cypress cache clear
then
./node_modules/.bin/cypress install --force
이후 에러는 해결 되었다.
