Pact провайдер не отправляет подтверждение Pact Broker - PullRequest
0 голосов
/ 09 июня 2018

Я новичок в Pact (потребительское тестирование) и Gradle, я использовал этот знаменитый семинар, чтобы попробовать Pact с Java и Pact Brocker https://github.com/Mikuu/Pact-JVM-Example,, но никогда не работаю с последней частью, когда провайдер отправляет подтверждение в PactМаклер.Он работает вручную через REST API, но использование проекта никогда не отправляет проверки.Пожалуйста, помогите понять, что происходит (возможно, чего-то не хватает, какая-то библиотека или аннотация?)

Я прикрепляю журнал отладки, когда производитель пытается отправить подтверждение Pact Broker (локальному брокеру в Docker, используя gradle с ./gradlew :example-provider:pactVerify).Я предполагаю, что тело запроса POST отсутствует.

14:22:59.469 [DEBUG] [org.apache.http.impl.execchain.MainClientExec] Opening connection {}->http://localhost:80
14:22:59.469 [DEBUG] [org.apache.http.impl.conn.DefaultHttpClientConnectionOperator] Connecting to localhost/127.0.0.1:80
14:22:59.470 [DEBUG] [org.apache.http.impl.conn.DefaultHttpClientConnectionOperator] Connection established 127.0.0.1:55770<->127.0.0.1:80
14:22:59.470 [DEBUG] [org.apache.http.impl.execchain.MainClientExec] Executing request POST /pacts/provider/ExampleProvider/consumer/JunitRuleMultipleInteractionsConsumer/pact-version/e66d465478e1934bca0ad9b905a2f83835af481d/verification-results HTTP/1.1
14:22:59.470 [DEBUG] [org.apache.http.impl.execchain.MainClientExec] Target auth state: UNCHALLENGED
14:22:59.470 [DEBUG] [org.apache.http.impl.execchain.MainClientExec] Proxy auth state: UNCHALLENGED
14:22:59.492 [DEBUG] [org.apache.http.impl.execchain.MainClientExec] Connection can be kept alive indefinitely
14:22:59.493 [DEBUG] [org.apache.http.impl.conn.DefaultManagedHttpClientConnection] http-outgoing-255: Close connection
14:22:59.493 [DEBUG] [org.apache.http.impl.execchain.MainClientExec] Connection discarded
14:22:59.493 [DEBUG] [org.apache.http.impl.conn.PoolingHttpClientConnectionManager] Connection released: [id: 255][route: {}->http://localhost:80][total kept alive: 0; route allocated: 0 of 5; total allocated: 0 of 10]
14:22:59.493 [DEBUG] [org.gradle.internal.progress.DefaultBuildOperationExecutor] Completing Build operation 'Execute verifyPact for :example-provider:pactVerify_ExampleProvider'
14:22:59.493 [DEBUG] [org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter] Removed task artifact state for {} from context.
14:22:59.493 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Finished executing task ':example-provider:pactVerify_ExampleProvider'
14:22:59.493 [DEBUG] [org.gradle.internal.progress.DefaultBuildOperationExecutor] Completing Build operation 'Task :example-provider:pactVerify_ExampleProvider'
14:22:59.493 [null] [org.gradle.internal.progress.DefaultBuildOperationExecutor] 
14:22:59.493 [DEBUG] [org.gradle.internal.progress.DefaultBuildOperationExecutor] Build operation 'Task :example-provider:pactVerify_ExampleProvider' completed
14:22:59.493 [INFO] [org.gradle.execution.taskgraph.DefaultTaskPlanExecutor] :example-provider:pactVerify_ExampleProvider (Thread[Task worker for ':',5,main]) completed. Took 0.96 secs. 

1 Ответ

0 голосов
/ 20 июня 2018

В примере pact отсутствует один важный шаг: Добавление аннотации @PactBroker

Ниже аннотации @Pact должна быть аннотация

@PactBroker(port = PORT_NUM , host = HOST_NAME)

Вы можете найти пример здесь в официальном репо

...