当前位置: 首页 > news >正文

做网站设计需要哪些软件网页浏览器的英文缩写

做网站设计需要哪些软件,网页浏览器的英文缩写,安徽网站推广优化,做的网站打开慢Pact是一个契约测试框架#xff0c;有多种语言实现#xff0c;本文以基于pact-python探究契约测试到底是什么#xff1f;以及如何实现 官网#xff1a;自述文件 |契约文档 (pact.io) 契约测试步骤 1、为消费者写一个单元测试#xff0c;让它通过#xff0c;并生成契约…Pact是一个契约测试框架有多种语言实现本文以基于pact-python探究契约测试到底是什么以及如何实现 官网自述文件 |契约文档 (pact.io) 契约测试步骤 1、为消费者写一个单元测试让它通过并生成契约文件。 2、在生产者服务执行该契约文件验证测试是否通过。 安装pact-Python 官方介绍的是直接使用pip下载但是国内下载有问题。 下载方法参考契约测试第一步--pact-python安装_51CTO博客_pact 契约测试 下载安装包 https://pypi.org/project/pact-python/0.19.0/#modal-close 点击下载后手动解压 入主目录与setup.py同级进入命令行执行 python setup.py build       python setup.py install 消费者测试 新建项目创建contract_miku.py文件 代码 # -*- coding: utf-8 -*-author dongfangbubai date 2023年07月27日 18:08:14 packageName className contract_miku describe 模拟消费者去请求真实的生产者import atexit import unittest # from query import get_cartoon_characters import requestsfrom pact import Consumer,Provider #构造pact对象定义消费者服务的名字并给他绑定一个生产者服务 pact Consumer(consumer).has_pact_with(Provider(provider)) pact.start_service()#start mock service # # #注册推出的时候关闭pact服务 atexit.register(pact.stop_service)class GetMikuInfoContract(unittest.TestCase):def test_miku(self):#定义期望的结果expected{salary:20000,name:miku,national:Chinese,contract:{Email:dongfangbubai163.com,Phone:13265523433}}#定义expected响应头headers{Content-Type:application/json}#定义预期请求以及响应的方式(consumer will request in this way and expected to get the repsponed from the procide)(pact.upon_receiving(a request for UserA)#请求的名字.with_request(methodGET,path/information,query{name:miku}) #期望的请求方法请求url.will_respond_with(200,headers, expected)#期望请求的返回)#定义消费者服务向模拟生产者发生请求并获得响应#the url and port is the mockservice not real provider with pact:#定义pactresultrequests.get(http://127.0.0.1:1234/information,{name:miku})print(result)print(result.headers)print(result.json())#做最后的断言self.assertEqual(result.json(),expected) if __name__ __main__:unittest.main()可以看到首先构造一个pact并使用pact启动mock服务。 在具体的测试类和方法中采用了unittest测试框架采用什么测试框架可以根据所使用的语言这里也可以用pytest。js语言就可以用mocha框架。 在test_miku函数中定义了expected,headers在pact中定义消费者预期的请求方式和响应结果。后续会根据这些生成契约。 在with pact里定义向mock服务的请求最后断言请求的结果与预期是否一致。 需要注意的是with pact里的url是pact带的mock服务对应的1234端口而不是真实的服务也不能填写真实服务。 运行结果 使用python方式运行contract_miku.py 在窗口输出了一些关于ruby编码的提示对结果好像没有影响。 在result.json的打印中可以看到打印的内容与我们的expected内容一致。 测试用例为通过状态。其实消费者端的单元测试代码无论expected怎么写测试用例都是通过的因为我们的目的就是写一个单元测试让测试用例通过。 契约文件 代码运行后会生成consumer-provider.json文件这就是契约文件。 契约文件里定义了consumerprovider的名称和交互。 交互包括request,response,请求body。 契约文件就是消费者的需求而生产者应该满足这些需求。 生产者测试 这里采用flask框架生成了一个接口 api_server.py # -*- coding: utf-8 -*-author date 2023年07月28日 09:31:25 packageName className api_server describe TODOimport jsonfrom flask import Flask, request, jsonifyapp Flask(__name__)rsp_body[{salary:20000,name:miku,national:Chinese,contract:{Email:dongfangbubai163.com,Phone:13265523433}}] app.route(/information) def test():get_namerequest.args.get(name,).lower()print(get_name)if get_namemiku:rspjsonify(rsp_body[0])elif get_namenanpha:rsp jsonify(rsp_body[1])else:rspjsonify({status:404 not found})return rspif __name__ __main__:app.run(host0.0.0.0,port8080) 运行api_server.py使用postman请求接口 测试生产者服务只需要在命令行执行 pact-verifier --provider-base-urlhttp://localhost:8080 --pact-urlconsumer-provider.json 这里指定了生产者服务的url和契约文件即消费者测试生成的文件 运行结果显示没有失败说明执行成功。 可以看到生产者服务返回的状态码响应体和响应头都与契约文件匹配所以验证成功。 契约测试与接口测试和集成测试的区别 参考 【软件测试课程中——微服务架构测试中的契约测试。】 https://www.bilibili.com/video/BV1Qf4y1F76L/?p4share_sourcecopy_webvd_source1aab39b433529f6f488e61847b342350
http://www.dnsts.com.cn/news/6998.html

相关文章:

  • 福州百度企业网站seo后台控制网站关键词设置的详细代码
  • 哈尔滨自助建站软件常宁城乡建设局网站查询
  • 网站飘窗怎么做晋中网站建设哪家强
  • 惠民建设局网站是哪个新蒲建设集团网站
  • 网站被黑客攻击怎么办太原网站制作哪家好
  • 企业网站的建立联系方式有什么外贸平台可以个人进入
  • 绍兴网站制作价格做视频解析网站犯法
  • 怎么做网站注册登入页面网站建设可以帮助花店怎么样
  • 西安公司的网站建设社交信息共享网站开发外包
  • 建立一个网站需要多少钱做婚礼logo免费的网站
  • php网站开发周期多长网站的登录弹窗怎么做
  • 快速做网站的方法厦门建设局
  • 内购券网站开发对网站设计的摘要
  • 高中做信息技术题网站泰安做网站公司哪家好
  • 自己建设网站需要审核吗北京正邦设计
  • 要做个公司网站的方案费用建设网站的申请信用卡
  • 宁波网站建设最好的是哪家做公众号试卷的网站
  • 云vps怎么搭建网站国外做图片识别训练的网站
  • 设计一个学院网站上海老闵行网站建设
  • 黑龙省建设厅网站php 网站开发缓存有那几种
  • 微博推广运营企业网站优化问题
  • chatgpt网站自动搜索关键词软件
  • 即墨网站建设即墨wordpress 同分类评论调用
  • 定期更新网站淘宝网网页版登录卖家中心
  • 怎么做网站优化推广天津网站建设哪家做得好
  • 网站怎么做视频三丰云做游戏网站
  • 什么网站做简历好建筑公司网站源码开源
  • icp网站备案系统有免费的微网站是什么
  • 网站开发和运维区别网络设计中网络设备选择的原则
  • 写小说赚钱的网站wordpress去除warning