2017-11-22 3 views
0

pact-python (0.10.0)을 사용하고 있습니다. 나는 엔티티 ID로 공급자에 요청 만들고 싶어 :Pact-python URL에 UUID가있는 요청을 테스트하는 방법

/entity/6000d04d-d5d6-4a5f-81d3-7d8a72b46174 

를하지만이 (6000d04d-d5d6-4a5f-81d3-7d8a72b46174)는 데이터베이스에 존재해야한다.

뭘 더 나은 해결책이 될 :

  1. 그 안에 존재하는 데이터 공급자 상태를 만들기 (하지만 어떻게 계약은 존재의 ID를 공급자 검증 작업 필요하지 말아야합니까? 실제 제공?)

  2. 데이터베이스의 모든 아이디의에 대한 쿼리 및이를 위해 어떻게 든

) 업데이트하고 가져온 ID로 계약을 게시해야 (요청을 만들기위한 하나를 선택3210

또는 내가 누락되었을 수도있는 더 나은 해결책이 있습니까?

답변

1

상호 작용이 재생되기 전에 정확한 UID로 엔터티를 설정하는 제공자 상태를 entity 6000d04d-d5d6-4a5f-81d3-7d8a72b46174 exists으로 지정해야합니다.

계약 테스트를 최대한 활용하려면 각 상호 작용에 대해 공급자의 데이터를 제어 할 수 있어야합니다. 할 수 없다면, 계약 테스트는 문제 공간에 적합하지 않습니다. https://docs.pact.io/documentation/provider_states.htmlhttps://github.com/pact-foundation/pact-ruby/wiki/Why-Pact-may-not-be-the-best-tool-for-testing-public-APIs

관련 문제