문제

프로젝트에 병렬 단위 테스트를 사용하고 있으며 실제로 이러한 병렬 단위 테스트를 작성하기위한 모범 사례에 대해 궁금해했습니다.

도움이 되었습니까?

해결책

병렬 단위 테스트로 동시에 실행할 수있는 테스트를 의미한다면, 내가 줄 수있는 가장 중요한 조언은 소위 공유 비품을 피하는 것입니다.

그 책 xunit 테스트 패턴 기본적으로 다음과 같이 설명 할 수있는 조정이라는 용어를 설명합니다. 지속적이고 일시적인 데이터를 포함하여 각 테스트 사례가 실행되는 전체 컨텍스트.

공유 고정물은 테스트 케이스가 실행 중에 일부 컨텍스트를 공유하고 있음을 나타냅니다. 해당 맥락이 변경 가능하면 인종 조건이 발생할 수 있습니다.

공유 비품을 불변성 (소위 불변의 공유 비품)으로 유지하면 테스트를 병렬로 실행할 수 있지만, 더 나은 소위 신선한 비품 (각 테스트 케이스가 자체 고정 장치가있는 경우) 테스트 케이스 자체 만 고정구에 액세스 할 수 있습니다.

공유 비품의 예에는 공유 데이터베이스를 사용하는 모든 종류의 테스트가 포함되지만 테스트중인 시스템 (SUT) 또는 테스트 자체에 정적 인 메모리 상태가있는 테스트도 포함하므로 피해야합니다.

또한 SUT 액세스가 공유 (정적) 데이터에 액세스하면 해당 액세스 자체가 스레드 안전해야합니다.

다른 팁

당신을위한 일부 interessing 링크 :

단위 테스트를 구성하십시오

유닛 테스트를 동시에 실행합니다

이 stackoverflow 질문에는 몇 가지 interessing 답변이 있습니다. 이것이 도움이되기를 바랍니다.

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