2009-04-02 5 views
2

저는 최근에 단위 테스트를 사용하기 시작했습니다. 단위 테스트에서 다루지 않는 주요 문제 중 일부는 동시성과 복잡한 객체 간 상호 작용 (대부분의 현대적인 OOP lanugages가 완전히 제거함)을 이해한다는 것을 이해합니다. CHESS은 동시성 문제를 어느 정도 해결합니까? 누군가 체스가 무엇인지, 어떻게 작동하는지, 그리고 단점이 무엇인지에 대해 나에게 마른 체형을 줄 수 있습니까?누군가가 CHESS를 Unit Testing에 처음 프로그래머에게 설명 할 의향이 있습니까?

답변

3

기본 아이디어는 경쟁 조건 (출력이 두 개 이상의 프로세스 중 어느 것이 "처음"에 "거기"가 있는지에 따라 달라질 때)이 가능한 순서가 한정되어 있다는 것입니다.

따라서 순서를 제어 할 수 있다면 체계적으로 테스트 할 수 있습니다.

코드가 가능한 모든 주문에 대해 예상대로 작동하면 통과합니다. 그렇지 않은 경우 실패합니다.

+0

은 전체적으로 의미가 있지만, 교차 객체 교착 상태 같은 문제가 발생하지 않습니다. 맞나요? – Firoso

+0

그들이 주문에 의존한다면 그것은 가능할 것입니다. 왜 그럴까? – MarkusQ

관련 문제