2012-11-15 2 views
2

취미 프로젝트로서 저는 작은 Bash 유닛 테스트 프레임 워크를 개발 중입니다. 기본 기능이 구현되었으므로 다음 단계는 테스트를 작성하는 것입니다.단위 프레임 워크를 테스트하는 방법은 무엇입니까?

하지만 프레임 워크 자체를 사용하여 프레임 워크를 테스트하려면 어떻게해야합니까?

Google에이 질문에 대한 답변을 시도했지만이 주제에 대해 아무 것도 찾을 수 없었습니다.

내가 지금까지 생각해 낸 아이디어는 테스트 프레임 워크 자체의 모든 기능을 사용하는 사소한 것들에 대한 테스트를 작성하는 것입니다. 테스트가 모두 초록색이면 괜찮습니다. 이 기본 테스트는 일종의 문서화 역할을 할 수도 있습니다.

그러나 이것이 실제로 좋은 접근 방법인지는 잘 모르겠습니다.

+0

자체 테스트가 필요합니까? 커스텀 어썰트를 쓸 때 나는 그것들을 잘 테스트해야한다. –

+0

@JohanLarsson 한 번 JUnit이 (JUnit을 사용하여) 자체 테스트를한다고 들었습니다. 그래서 이것은 이것이 다소 필수적이라고 생각했습니다 :-). – helpermethod

+0

예, 아마도 순수한 관점에서입니다 :) –

답변

2

문제는 테스트가 실패 할 수 있는지 테스트하는 것입니다. 단위 테스트는 모두 "녹색"이어야합니다. 그러므로 올바른지 증명하지 못한 테스트를 선택하는 것은 선택 사항이 아닙니다.

나는 솔루션이 조용한 기술을 기반으로한다고 생각합니다. "테스트 프레임 워크 단위 테스트"에 관해 일반적인 조언을하는 것은 어렵습니다. 어떤 부분이 프레임 워크에 속합니까? 단위 테스트가 포함 된 파일을 읽는 부분, 테스트를 실행하는 부분, 일부 보고서를 작성하는 부분, 어설 션과 같은 도우미 라이브러리 ... ...?

이 부분들을 나누어서 분리하여 실행할 수 있어야합니다. 그런 다음 다른 테스트와 차이가 없습니다.

아마도 단위 테스트 내에서 전체 테스트 러너를 실행하는 방법을 찾을 수 있습니다. 이것은 단위 테스트가 아니고 통합 테스트 일 것입니다. 이러한 종류의 테스트는 일반적으로 매우 복잡하기 때문에 유지 관리 문제가 될 수 있습니다. 파일 시스템과 유닛 테스트에서 사용해서는 안되는 운영 체제의 다른 것들을 사용하십시오. 이것이 노력할만한 가치가 있는지 생각해보십시오.

항상 테스트 할 수없는 부분이 있습니다. 모든 것을 하나로 모아서 실제 환경에서 응용 프로그램을 실행하는 부분입니다. 여기에는 차이점이 없습니다. "최종 사용자 환경"중 일부는 "녹색"테스트로 테스트 할 수 있기 때문에 훨씬 쉽습니다.

관련 문제