DB에 객체를 쓰고 업데이트 할 때 권한 검사를 위해 클래스를 작성하기 시작했습니다. 개발 및 테스트를 위해 권한 확인은 재생 구성 값을 통해 비활성화 할 수 있습니다. 첫 번째 시도는 권한 검사가 활성화 된 상태에서 테스트를 작성하는 것이 었습니다. 테스트가 실행되는 동안 검사가 비활성화 된 경우, 단순히 물론config가 결과에 영향을 줄 때 적절한 테스트가 필요합니까?
org.junit.Assume.assumeTrue(false);
이 권한 검사가 비활성화되었을 때 개발, 테스트 아마 실행되지 않을 수 있다는 것을 의미 통해 테스트를 해제합니다.
각 테스트마다 두 개의 코드 경로가 있어야 하나, 하나는 config를 사용하도록 설정하고 하나는 설정을 사용하지 않도록 설정 했습니까?
또한 정적 메서드 대체를 통해 구성 값을 주입하는 조롱 프레임 워크를 소개 할 때입니까? 인터넷 검색 때 나는 직업을 위해 PowerMock을 권하는 https://blog.codecentric.de/en/2011/11/testing-and-mocking-of-static-methods-in-java/을 우연히 발견했습니다.
대안으로 재생 구성 값에 대한 정적 래퍼 클래스를 만들고 여기에 값을 변경할 수 있습니다.
어느 쪽이 바람직합니까? 구성을 구성 할 수 있도록 -
- 내가 # 1 투표 의지