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

企业网站都是静态的吗邯郸网站设计

企业网站都是静态的吗,邯郸网站设计,天津建设工程,铜陵网站建设维护PythonPytestAllureYaml接口自动化测试框架详解 编撰人#xff1a;CesareCheung 更新时间#xff1a;2024.06.20 一、技术栈 PythonPytestAllureYamlJenkinsGitLab 版本要求#xff1a;Python3.7.0,Pytest7.4.4,Allure2.18.1,PyYaml6.0 二、环境配置 安装python3.7PytestAllureYaml接口自动化测试框架详解 编撰人CesareCheung 更新时间2024.06.20 一、技术栈 PythonPytestAllureYamlJenkinsGitLab 版本要求Python3.7.0,Pytest7.4.4,Allure2.18.1,PyYaml6.0 二、环境配置 安装python3.7并配置Pycharm运行环境为python3.7安装allure并配置好环境变量安装依赖包 pip install -r requirements.txt 三、自动化思路 通过请求方法封装及环境配置用pytest框架运行读取testcase文件测试用例集将参数传入对应test_*用例执行器汇总并执行输出allure测试报告 1单个用例 2多个用例 3多用例上下游接口串联传参 4用例执行场景跑批 5测试报告 6通知邮件、企业微信 四、项目结构 框架目录详解 –common:公共方法包 --connect_db.py: SQL操作封装 --get_path.py:获取文件路径方法 --logger_util.py:输出日志方法 --parameters_until.py传参方式方法封装 --requests_util.py请求方式方法封装 --yaml_util.pyyaml文件读取写入方法–config: 配置包 --config.yml配置文件主要为域名ip地址配置及日志输出级别--extract.yml接口上下游串联时用例文件做参数化截取返回值后自动输出保存到该文件–data: 用于存放csv传参文件包可用可不用具体根据实际情况 --get_token.csv存放csv文件参数–logs: 日志输出文件会自动生成 –reports: 测试报告文件 –testcase: 测试用例文件集 --fenmi项目测试用例--login.yml接口参数传参 # 如- name: 1、获取UUID# base_url: https://XXXXX.combase_url: ${get_base_url(base_fenmi_url)}request:method: geturl: /fenmi/codeheaders:Authorization: {{access_token}}params:Accept: application/json, text/plain, */*Accept-Encoding: gzip, deflate, br, zstdAccept-Language: zh-CN,zh;q0.9Connection: keep-aliveextract:uuid: uuid:(.*?)validate:- equals: {code: 200}- equals: {msg: 操作成功} # 解释name为接口名称 base_url读取config.yml文件的域名IP request:请求参数 method请求方式 url:接口地址 headers请求头比如token,{{access_token}}为取上游接口返回值做变量进行参数化做参数化为固定写法{{变量名}} params: 请求参数具体需要看接口请求传参方式 extract用于存在上下游接口关联时对返回值进行取值固定写法uuid:(.*?)为正则表达式取值也可用json提取固定写法变量名正则表达式 validate断言 --test_fenmi.py: 单用例执行器执行式传入对应yaml文件地址即可import allureimport pytestfrom common.requests_util import Requestutilfrom common.parameters_until import read_fileallure.epic(XX互联)allure.feature(登录并查询服务收入细项列表数据)class Testrequests:# 获取access_token(get请求)allure.story(获取uuid并登录获取token)allure.severity(normal)pytest.mark.parametrize(caseinfo,read_file(/testcases/fenmi/login.yml))def test_get_token(self,caseinfo):allure.dynamic.title(caseinfo[name])allure.dynamic.description(caseinfo[name])Requestutil().analysis_yaml(caseinfo)–all.py: 主运行程序 –conftest.py: 测试配置工具clean_extract方法为重跑时清除原文件数据 –debugtalk.py:自定义函数用于存放公共函数和变量的文件 –environment.properties:用于生成allure测试报告时配置展示环境数据 –pytest.ini: pytest测试运行配置文件用于配置pytest运行时指定一些参数 [pytest] addopts -vs --alluredirreports/temp --clean-alluredir 运行时清除原先的测试报告及临时文件 ; testpaths testcases/fenmi 执行单个项目测试文件时可选一个testcase目录 testpaths testcases/fenmi testcases/weixin testcases/Zgen 执行多个项目测试文件时可选多个testcase目录 python_files test_*.py 执行的文件及测试用例 python_classes Test* 执行对应测试用例目录所有Test开头的类 python_functions test_* 执行对应类下所有的test开头的方法五、用例集 1Yaml用例文件说明 2用例执行文件说明 3CSV文件用例读取 data参数 Yaml文件参数化 4testcase文件为用例集可在用例集新增对应测试项目可按对应项目命名 5yaml文件为对应接口请求参数可在yaml文件添加一条或者多条用例请求参数 6test_*.py文件通过pytest框架封装读取yaml文件参数并可运行的用例运行器 六、接口自动化框架规则 1.必须有的四个一级关键字namebase_urlrequestsvalidate 2.request关键字必须包含两个二级关键字methodurl 3.传参方式在request一级关键字下通过二级关键字参数传参。 如果是get请求通过params传参。如 params:grant_type: client_credentialappid: XXXXXsecret: XXXX 如果是post请求传json格式通过json关键字传参。如json: {tag: {id: 100, name: XXXaaa }}传表单格式通过data关键字传参。如data:{tag: {id: 100, name: XXXCaaa }}传文件格式通过files关键字传参。如files:media: E:/Tanzl.jpg4.如果需要做接口关联那么必须使用一级关键字extract 提取 如json提取方式 extract:access_token: access_token 如正则表达式提取方式 extract:access_token: access_token:(.*?)取值如access_token{{access_token}}5.热加载当yaml文件需要使用动态参数时那么可以在debugtalk.py中写方法调用。 注意传参时需要什么类型的数据需要做强转。int(mix),int(max)如# 获取随机数def get_random_number(self,mix,max):return random.randint(int(mix),int(max))热加载取值${get_random_number(100000,999999)}6.此框架支持两种断言方式分别是equals和contains断言 如 validate: - equals: {status_code: 200} - equals: {expires_in: 7200} - contains: access_token7.数据驱动使用csv和一级关键字parameters实现如 yaml写法parameters:name-appid-secret-grant_type-assert_str: data/get_token.csv csv写法name,appid,secret,grant_type,assert_str获取access_token统一鉴权码,wx9b755d429f6fb216,b963db0b97c8487b0cb920a240bd78e3,client_credential,access_tokenappid必填项检查,,b963db0b97c8487b0cb920a240bd78e3,client_credential,errcodesecret必填项检查,wx9b755d429f6fb216,,client_credential,errcode8.config.yml日志监控异常处理以及基础路径的设置。 七、测试报告 1测试报告概述 可进行筛选成功或失败的用例可查看该用例的详情测试套可查看对应测试模块用例集合功能模块可查看对应场景化用例集合 2测试报告详情 可查看具体用例请求参数及返回报文 八、Jenkins拉取GitLab集成及运行 1GitLab仓库代码 2框架主运行程序改动点如果没有Jenkins没报Allure不是内部命令可不改 3配置Jenkins环境变量及对应执行脚本 4配置Allure测试报告 5Jenkins拉取GitLab仓库代码及对应工作空间 6运行构建项目 7集成推送企业微信信息 8Jenkins集成Allure测试报告展示 9生成Allure报告后报告显示字段内容及含义
http://www.w-s-a.com/news/987733/

相关文章:

  • 环保网站 怎么做物流网站的功能与特色
  • 网站多久才会被收录服务器租用泰海
  • 电商网站建设合同模板临汾推广型网站建设
  • 天猫商务网站建设目的长春网站设计
  • 公司网站建设会议纪要昆山高端网站建设机构
  • 做消费网站流程深圳网站设计价格
  • 做电影网站怎么接广告中国最新军事新闻视频
  • 网站推广设计做哪些设置自动删除的wordpress
  • 东莞东坑网站设计专业网站制作设
  • 网站怎么做现场直播视频成都科技网站建设找
  • 个人网页设计步骤网站没有内容 能做优化吗
  • 专业网站建设公司招聘网站排行榜
  • 网站建设规范方法企业解决方案架构
  • ae做网站导航wordpress门户
  • 重庆市网站备案材料云南做网站
  • 网页设计模板网站免费珠海视窗网
  • 茂名模板建站定制WordPress注册不提示
  • 陕西营销型手机网站建设深圳制作网站服务
  • 受欢迎的锦州网站建设Wordpress 图片左右滑动
  • 湖南优化网站建设线上网站建设需求
  • 建什么类型的网站访问量比较大哪些外包公司比较好
  • php网站地图外贸建站哪家强外贸网站怎么做
  • 宁波五金网站建设中国建筑网官网投诉查询
  • 哪个网站注册域名便宜免费流程图制作网站
  • 潍坊做网站南宁网站seo优化公司
  • 网站建设的基本技术步骤无网站营销
  • 我国旅游网站的建设网站开发 混合式 数据库
  • 淘宝客网站域名家居网站开发项目计划书
  • 网站打不开显示asp苏州注册公司需要多少钱
  • 凡科建站登录官网wordpress主题有什么用