pact -python 用于 QA 团队
pact -python for QA Team
我正在尝试在本地设置契约 python 项目并面临问题。如果你能帮助我解决这些问题就太好了
看来我们必须从消费者端使用 localhost:1234? .我们可以使用真实服务代替模拟服务吗?如果我使用 localhost:1234 ,则会生成协议,但如果我使用真实服务,则会出现错误 所以我的问题是我们是否需要始终使用 Mock 服务 ((localhost:1234)我们从消费者方面创建协议
第二期:我来自 QA 团队,认为协议应该由 DEV 团队而不是 QA 团队编写。我的假设正确吗?如果是,这些协议将如何帮助 QA 团队?
consumer.py
import requests
def callAPI(self,inputString,Url):
respone = requests.get(url+inputString).status_code
test_consumer.py:
pact = Consumer ( 'consumer' ).has_pact_with ( Provider ( 'provider' ) )
pact.start_service ()
atexit.register ( pact.stop_service )
def test_callAPI (self):
url = 'http://localhost:1234'
pact.given ( 'sending user name to Url'
).upon_receiving (
'once i get the respone from service'
).with_request (
'get', '/' ).will_respond_with ( 200)
with pact:
result = callAPI (url)
self.assertEqual ( result['status_code'], 200 )
提前致谢,
是的,您的代码必须访问模拟服务器,否则我们无法确定您的期望是否真实。合同测试使用它来保证它对供应商的要求。
您也可以告诉 Pact 使用任何端口,这只是默认端口。
should devs write them ... how will it help the QA team?
嗯,简短的回答是肯定的,它们确实应该由编写代码的人编写。那是一件坏事?作为 QA,我想这会让你的工作更轻松,因为质量会自动提高,你可以专注于更重要的活动,而不是编写自动化测试。
我正在尝试在本地设置契约 python 项目并面临问题。如果你能帮助我解决这些问题就太好了
看来我们必须从消费者端使用 localhost:1234? .我们可以使用真实服务代替模拟服务吗?如果我使用 localhost:1234 ,则会生成协议,但如果我使用真实服务,则会出现错误 所以我的问题是我们是否需要始终使用 Mock 服务 ((localhost:1234)我们从消费者方面创建协议
第二期:我来自 QA 团队,认为协议应该由 DEV 团队而不是 QA 团队编写。我的假设正确吗?如果是,这些协议将如何帮助 QA 团队?
consumer.py
import requests
def callAPI(self,inputString,Url):
respone = requests.get(url+inputString).status_code
test_consumer.py:
pact = Consumer ( 'consumer' ).has_pact_with ( Provider ( 'provider' ) )
pact.start_service ()
atexit.register ( pact.stop_service )
def test_callAPI (self):
url = 'http://localhost:1234'
pact.given ( 'sending user name to Url'
).upon_receiving (
'once i get the respone from service'
).with_request (
'get', '/' ).will_respond_with ( 200)
with pact:
result = callAPI (url)
self.assertEqual ( result['status_code'], 200 )
提前致谢,
是的,您的代码必须访问模拟服务器,否则我们无法确定您的期望是否真实。合同测试使用它来保证它对供应商的要求。
您也可以告诉 Pact 使用任何端口,这只是默认端口。
should devs write them ... how will it help the QA team?
嗯,简短的回答是肯定的,它们确实应该由编写代码的人编写。那是一件坏事?作为 QA,我想这会让你的工作更轻松,因为质量会自动提高,你可以专注于更重要的活动,而不是编写自动化测试。