Pact是一个契约测试框架,有多种语言实现,本文主要介绍模块pact-python进行契约测。
官网:https://docs.pact.io/implementation_guides/python/readme
安装命令:pip install pact-python
安装过程中如果报错,安装失败,需要进如pact包下载官网,找到对应的ZIP包自行下载,
https://github.com/pact-foundation/pact-ruby-standalone/releases
放到pact\bin目录下,再重新用命令pip install pact-python 安装
此外需要安装另外两个依赖包:pip install requests 和pip install Flask
Step 1: 写一个 customer:customer_success.py
import requests
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0',
"Content-Type": "application/json",
}
data={
"data": {
"transactionType": "C", #
"brnNo": "9998199930", #
"taxInvoiceNumber": "202106161221150000000001",
"supplierBrnNo":"9998199954",
"creationDate": "20210616", #
"taxInvoiceType": "11", #
"supplyPrice": 75000000000, #
"taxAmount": 320000000, #
"buyerBrnNo": "9998199916",
# 非必填
"mainItems": "전산장비",
"remark1": "하드웨어 10종",
"remark2": "소프트웨어 30종",
"supplierCmpName": "서울데이터시스템",
"buyerCmpName": "종각은행"
},
"header": {
"chanlId": "IDC",
"grpId": "GROUPID001",
"messageTimeStamp": '2021-05-17T20:00:20.123Z',
"trackingId": "ABC123DEF456"
}
}
url = 'http://127.0.0.1:8080'