
接口测试
文章平均质量分 58
测试也是会开发的
每天进步一点点,做个有趣的人
展开
-
接口自动化--断言
python中集合的数据类型有列表(list),元组(tuple),字典(dict),集合(set),字符串(str)等,这些都是可迭代的对象(Iterable),必须通过python内置方法iter()方法将这些可迭代的对象转化成迭代器对象,进而可以使用for循环进行遍历。=”、“<”、“>”、“>=”、"<=" 等符号来比较相等、不相等、小于、大于、大于等于和小于等于。采用assert断言时,可添加备注信息,当断言失败时,备注信息会以assertionerror抛出,并在控制台输出。原创 2024-01-05 10:29:27 · 825 阅读 · 0 评论 -
接口自动化技巧
可以再pytest,ini文件设置过滤掉告警信息。原创 2024-01-05 10:27:31 · 366 阅读 · 0 评论 -
接口自动化—pytest命令行操作
action=“store”:默认,只存储参数的值,可以存储任何类型的值,此时 default 也可以是任何类型的值,而且命令行参数多次使用也只能生效一个,最后一个值覆盖之前的值;在pytest.ini里面可以设置addopts参数:addopts参数可以更改默认命令行选项,这个当我们在cmd输入一堆指令去执行用例的时候,就可以用该参数代替了,省去重复性的敲命令工作。方法:在py文件的最后,添加main方法,使用pytest.main([‘文件名(要执行的用例)’、’参数1’、‘参数2’、‘参数n’])原创 2024-01-05 10:24:22 · 2275 阅读 · 0 评论 -
Pytest-fixture
执行顺序:前置由外层到内层执行,后置由内层到外层执行,先执行最里层的作用域,在执行它的上一层作用域,直到再向外找不到作用域为。当设置为 Ture 时,在一个session内的所有的 test 都会自动调用这个fixture,建议该开关谨慎使用。先用自己的,再去找同级目录下的 conftest.py 再去找上一级目录 下的 conftest.py。conftest.py可以实现配置里面的数据共享,不需要手动的去导入这个配置里面的配置。继承条件:作用域由里向外继承作用域,也可以继承同级的作用。原创 2024-01-05 10:19:18 · 931 阅读 · 0 评论 -
接口自动化-mysql和其他数据操作
前面也有介绍到,一些数据需要做临时的创建、清理放到数据库里面操作会比较容易些,而且数据库的存储数据可以达到数据和代码分离,数据库还可以进行备份,共享。要是和代码放在一起,以后项目变大,代码的占用空间会很多,其他人共享项目代码的时候维护数据成本高。类型六:对于全部是独立的接口项目,可以使用数据驱动的方式,用excel/csv管理数据。类型五:对于一些静态数据,并且很长时间不会动的数据,可以存放到py脚本的开头。类型三:对于随机数据,一次性使用的数据,可以使用随机函数生成。4、再介绍下操作init文件的方法。原创 2024-01-04 16:26:41 · 390 阅读 · 0 评论 -
接口自动化-日志操作
使用的是python的内置logging封装的,返回的logger对象的类型是py官方内置日志的Logger类型,兼容性强,保证了第三方各种handlers扩展数量多和方便,和一键切换现有项目的日志。2.3.1、图片中的功能在nb_log_config文件里面可以从上到下分别设置:是否日志显示彩色,是否背景显示颜色,是否要支持print打印内容从日志跳转到具体位置,设置打印出来日志的模板格式。2.2、nb_log的基础使用,实例化log,主要的参数是定义log的名称和指定log日志的路径和日志文件名称。原创 2024-01-04 16:25:36 · 461 阅读 · 0 评论 -
接口自动化-allure测试报告
安装完成后,打开一个pytest脚本进行验证一下,如果报错:AttributeError:module 'allure' has no attribute...这样的报错是之前安装的 pytest-allure-adaptor 这个插件发生了冲突,这两个插件是不能共存的,去卸掉 pytest-allure-adaptor 这个就行了 ( pip uninstall pytest-allure-adaptor)给用例添加链接(我一般是添加对应的日志链接):@allure.link()原创 2024-01-04 16:24:50 · 1286 阅读 · 0 评论 -
接口自动化----yaml数据管理
注意事项:参数对于的[]里面的值一定要用列表或者元组的形式把每组数据区分开,哪怕是只有一组数据也要用列表或者元组这样处理。对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)在列表里面的数字直接读出来是int或者是float类型,需要使用!数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)适用于枚举值的情况,覆盖所有输入和输出组合的情况,或者是多个不同输入组合。缩进的空格数不重要,只要相同层级的元素左对齐即可。原创 2024-01-04 16:22:12 · 413 阅读 · 0 评论 -
Pytest自动化的坑
10、当传递的请求有多层嵌套的时候,一定要在header上加上headers={'Content-Type': 'application/json'},这样请求就能通过了。4、除了用例test的代码需要函数和类使用test作为开头,其他被调用或者继承的api方法不要使用api开头,否则会被多次重复执行。1、封装pytest的类型,名称的开头需要使用Test开头命名类,否则会出现运行pytest找不到类的情况。函数封装的方法,其他的非test开头的函数也可以使用到。里面的@pytest。原创 2024-01-04 16:17:50 · 533 阅读 · 0 评论 -
接口自动化--mock使用
2.2新建文件 docker-compose.yml 并将上面 docker-compose 文件(查看地址:https://hub.docker.com/r/easymock/easymock)内容复制进入 docker-compose.yml,然后将内容中注释位置替换为自己需要的本地地址即可。"db": "mongodb://mongodb/easy-mock" # host 请务必替换为mongodb, 而非 localhost。4、easy-mock应用到平时的测试工作中。原创 2024-01-04 16:15:58 · 413 阅读 · 0 评论 -
接口开发—hrun语法和用例规范
5.2.2testcase层:主要是把之前api层的用例组合成用例,包括:config(存放公共配置)和teststeps(api或者自定义的接口组成 的用例步骤)2层部分,里面调用api的路径都是从根目录后开始写的。5.2.4 .env文件是存放环境配置参数:里面使用=进行参数的赋值,其他的模块使用变量直接使用${ENV(变量名称)}就可以直接获取env文件里面的变量值了。使用参数 -H 可以添加请求的头部,多个头部信息需要使用多个 –H。2、从debugtalk里面获取对应的函数的返回值。原创 2024-01-04 16:15:02 · 919 阅读 · 0 评论 -
接口测试中session和cookie的使用
Session是每个用户在访问服务端的时候,服务端都会主动分配一个sessionid给用户,这个session信息就是保存在服务端上的。cookie是保存在客户端的,在客户端访问服务端后,服务端给客户端的凭证,后面在cookie没有失效的这段时间里面的请求,客户端都是会带着这个有凭证功能的cookie去请求端,服务端根据cookie去检查访问的用户状态是否正确。1、cookie在客户端,session在服务端,cookie的产生是在服务端产生的。3、在接口测试中如何使用cookie。原创 2024-01-04 15:50:37 · 493 阅读 · 1 评论 -
接口测试—上传文件和图片
要点一:在MultipartEncode方法里面选择fields参数,参数的内容填写webform表单key里面的name值和右侧的value的值,name之前的信息不需要关注。初步封装上传接口,只需要传入对应的url和data值就可以上传信息成功,上传的断言是判断里面是否有成功值的返回。2、上传图片和上传文本都是一样的方法,抓包重点查看webform内容,里面有需要的请求data数据。要点二:假如key里面的name之后还有其他的值,那把其他的值也提出来,全部使用“,”分开。要点三:附件上传的格式。原创 2024-01-04 15:47:32 · 905 阅读 · 1 评论 -
搭建HttpRunnerManager接口测试平台
后台运行:nohup python3 manage.py runserver 0.0.0.0:8000 >hrun.log 2>&1 &添加软链接 ln -s /usr/local/python3/bin/hrun /usr/bin/hrun。解决方法:1、检查依赖包是否安装完成2、检查项目名称、或者模块和用例名称是否包含中文。查找hrun find / -name hrun。方法二:使用python3安装。先安装好python3,然后。hrun –V可以查看版本号。原创 2024-01-04 15:26:48 · 442 阅读 · 1 评论 -
接口测试一:接口测试流程
学习目标:了解接口测试自动化测试的流程接口自动化测试的流程1、需求分析:了解有有哪些接口和哪部分接口需要实现接口自动化参考资料:接口文档接口文档的关键内容:请求:url、方法、数据响应:响应数据、状态码2、挑选需要实现自动化的接口(时间、人员、接口复杂度)3、设计自动化测试用例一般分为接口实现(单个接口)、功能实现(通过接口实现功能)、场景实现...原创 2020-03-14 16:42:02 · 276 阅读 · 0 评论