문제

Xunit 스타일의 통합 테스트 대신 FIT/Fitnesse를 사용하는 요점은 무엇입니까? 제 생각에는 정말 이상하고 매우 불분명 한 구문이 있습니다.

제품 소유자가 테스트를 작성하는 것이 실제로입니까? 그들은하지 않을 것입니다! 그들에게는 너무 복잡합니다. 그렇다면 왜 누군가를 착용해야합니까?

업데이트 따라서 비즈니스 규칙 테스트에만 적합합니까?

도움이 되었습니까?

해결책

요점은 일하는 것입니다 ~와 함께 비 프로그래머, 종종 비즈니스 애플리케이션의 잠재 고객과 같은 완전히 비 기술적 인 사람들조차도 응용 프로그램을 수행 한 다음 테스트에 참여해야합니다. 테스트를 수행하는 것은 확실히 너무 복잡하지만 예를 들어 단어로 채워진 샘플 데이터 테이블에 대해 논의 할 수 있어야합니다. 그리고 가장 큰 것은 기존 사양과 달리 해당 문서는 자동화 된 테스트를 통해이를 업데이트 할 수 있기 때문에 응용 프로그램과 함께 사용됩니다.

보다 적합에 대한 소개 그리고 적합한 워크 플로 제임스 쇼어 (James Shore)에 의해 원한다면 나머지 문서에 대한 링크를 따르십시오.


업데이트: 비즈니스 규칙이 의미하는 바에 따라 다릅니 까? ;-) 어떤 사람들은 (비즈니스 규칙 엔진 등과 같이) 매우 좁게 이해할 것입니다.

내가 알 수 있듯이 Fit은 최종 사용자 또는 도메인 전문가 (일부 도메인)가 이해, 확인 및 토론 할 수있는 문서에 풍부한 현실적인 예제가있는 비즈니스 (도메인에서와 같이) 사용 사례를 작성할 수있는 도구입니다. 동시에이 예제는 기계를 읽을 수있는 형태로 사용하므로 자동 테스트를 구동하는 데 사용될 수 있습니다. 문서를 완전히 스스로 작성하거나이를 해결하지 못합니다. 대신, 그것은 양쪽에서 어떤 응용 프로그램이 무엇을 할 것인지에 대한 이해가 커지는 것을 반영하는 캘러런블 및 토론의 산물입니다. 진행 상황이 더 풍부 해지고 더 많은 코너 케이스가 해결됩니다.

어떤 응용 프로그램이 중요하지 않은지가 중요하지 않습니다. 기능 사양의 형태입니다. 따라서 그것은 다소 광범위하고 모듈로 구성된 것이 아니라 오히려 사용 시나리오입니다.

예제에서 나오는 테스트는 비즈니스 관점에서 중요한 측면에서 적용의 외부 행동을 테스트합니다. 예, 비즈니스 규칙이라고 부를 수 있습니다. 그러나 약간의 비틀기만으로 Diego Jancic의 신용 점수 예를 살펴 보겠습니다. FIT 문서의 일부인 경우 1) 속성 및 점수 및 2) 클라이언트 데이터 및 확인 결과 제공, 실제 비즈니스 규칙 인 점수 테이블 (속성 및 점수) 또는 각 클라이언트의 점수를 계산하는 경우 어떨까요? (점수 테이블 기반)? 그리고 어느 것이 테스트됩니까?

FIT/Fitnesse 테스트는 승인 테스트에 더 적합한 것 같습니다. 다른 테스트 (고객, 사용자, 도메인 전문가 등과의 협력에 관심이 없으면 테스트를 자동화하려면)보다 전통적인 방식으로 쓰고 유지하기가 더 쉬울 것입니다. Xunit은 단위 테스트 및 API 테스트에 좋습니다. 각 웹 프레임 워크에는 웹 앱/서비스 테스트를위한 몇 가지 도구가 있어야합니다. Django에는 작은 테스트 클라이언트가 있습니다. 당신은 선택해야 할 것이 많습니다.

또한 항상 자신의 도구 (또는 기존의 일부 조정)를 특정 관심 영역에서 더 잘 맞도록 (PUN 의도)를 작성할 수 있습니다.


하나 더 일반적인 생각. 간단하고 일반적인 코드로 해석되는 잘 정의 된 데이터 형태의 "비즈니스 규칙"과 거의 무엇이든 테스트를 인코딩하는 것이 종종 (항상 !!!)입니다. 그런 다음 다른 방법으로 데이터를 쉽게 사용할 수 있습니다. 문서 생성, 새로운 테스트 프레임 워크로 마이그레이션, 새로운 환경/프로그래밍 언어로의 포트 응용 프로그램, 일부 외부 규칙 또는 기타 시스템과의 적합성을 확인하는 데 사용하십시오 (상상력 만 사용). 코드에서 그러한 정보를 꺼내는 것이 훨씬 어렵습니다. 간단한 하드 코드 단위 테스트 또는 비즈니스 규칙.

적합 테스트 케이스를 데이터로 저장합니다. 사용 방법 때문에 매우 구체적인 형식으로. 도메인 별 테스트는 간단한 CSV, JSON 또는 YAML과 같은 다른 형식을 사용할 수 있습니다.

다른 팁

아이디어는 귀하 (프로그래머)가 Excel 시트와 같은 이해하기 쉬운 형식을 정의한다는 것입니다. 그런 다음 제품 소유자는 비즈니스에 있지 않은 사람들을 위해 이해하기 어려운 정보를 입력합니다. 그리고 PO가 Running Fit을 기대할 때 코드가 작동하는지 확인합니다. Xunit에 사용되는 방식은 이해하기 쉬운 또는 간단한 정보를위한 입력으로 프로그래머에게 사용할 수 있습니다. Xunit 테스트에서 여러 필드로 많은 이상한 예제를 입력해야한다면 읽기가 어려워 질 것입니다.

연령, 결혼/단일, 어린이, 임금, 활동 등을 기준으로 고객에게 대출을 제공할지 여부를 결정 해야하는 경우를 상상해보십시오. 프로그래머로서 해당 정보를 작성할 수 없습니다. 위험 관리자는 Xunit 테스트를 작성할 수 없습니다.

회귀 및 버그 테스트의 중복성을 줄이는 데 도움이됩니다. 테스트 케이스의 관리 가능한 저장소 구축. 한 번 빌드하고 영원히 사용합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top