
pytest框架与python接口自动化
文章平均质量分 75
pytest框架
菜鸟学识
日益努力,而后风生水起
展开
-
Pytest框架实战二
一般而言编写的测试类都是以Test开头,编写的测试函数都是以test开头,而所有的测试模块在test的包下,以及执行的过程中为了输出详细的信息以及打印输出的信息,在执行的时候都会带上-v与-s的命令,当然还有其他的信息。在如上的代码中,完全的把登录的账户与密码分离了出来,这样就可以满足上面说的针对不同的集群以及集群规模化的验证模式,而且在上面也使用了默认的模式,也就是说执行的时候可以指定自定义的账户与密码,如下执行的方式是指定了账户与密码(自定义但是必须是指定的账户密码是系统的用户)原创 2024-05-18 09:44:31 · 728 阅读 · 0 评论 -
Pytest框架实战一
备注:如上代码中,函数data()主要返回的是被测试的数据,而且返回的形式是列表的数据类型,列表里面的元素当然可以是常用的数据类型(元组&列表&字典),分离出来的数据第一个是请求参数,第二个是响应,这样结合参数化就可以使用一个CASE的代码能够覆盖很多的测试场景。在任何的一个单元测试框架里面,都是存在测试固件的,比如UnitTest测试框架中的setUp()与tearDown()方法,但是测试固件在Pytest体现的不是那么很明显,但是既然是测试框架,必然存在测试固件的。原创 2024-05-17 15:15:23 · 791 阅读 · 1 评论 -
Pytest测试实战
参数化的本质是对列表中的对象进行循环,然后把循环的对象进行一一的赋值,它的应用场景主要是基于相同的业务场景,但是需要不同的测试数据来测试从而达到最大化的覆盖更多的业务场景和测试的覆盖率。Pytest测试框架是动态语言Python专用的测试框架,使用起来非常的简单,这主要得易于它的设计,Pytest测试框架具备强大的功能,丰富的第三方插件,以及可扩展性好,可以很好的和unittest测试框架能够结合起来在项目中使用。本文章主要介绍Pytest测试框架中参数化的详细信息。原创 2024-05-16 11:29:21 · 1022 阅读 · 2 评论 -
python接口测试之token&session的处理
使用python语言来进行实现,在这里我们使用第三方的库requests,需要单独的安装下,安装的命令是: pip install -U requests见安装的截图:安装成功后,如果可以在正常的导入,说明安装OK,见截图: 安装好requests好后,我们就可以开始了,关于requests有不清楚的,可以看Python接口测试之requests(七),这里我们直接来进行实战,我们再来进行回顾下我们需要做的事情,我们需要做的就是登录成功后,获取token,后面的接口都需要这个参数,所以我们需要把原创 2024-05-15 14:48:07 · 1214 阅读 · 1 评论 -
Python接口自动化测试之动态数据处理
在这个图片中,可以看到这是不同的接口请求的数据,那么我们在自动化测试中就得定位到具体的行和列,才可以找到这条数据,那么就涉及到一个问题,这个问题就是在一个excel中有太多的数据,如果精确到行和列,某些时候会出现混乱,按照行和列的方式并不是解决问题的最佳思想。我一直认为,程序是人设计的,它得符合人性,那么自动化测试的,就是需要在复杂世界的背后,找到一个共同的点,然后把复杂的程序进行简单化。3、成为字典的类型后,对字典中的参数用户ID进行赋值,值为添加用户之后获取的用户ID。1、读取删除用户的请求数据。原创 2024-05-14 16:17:09 · 583 阅读 · 0 评论 -
用python进行接口测试(详细教程)
前言其实我觉得接口测试很简单,比一般的功能测试还简单,现在找工作好多公司都要求有接口测试经验,也有好多人问我什么是接口测试,本着不懂也要装懂的态度,我会说:所谓接口测试就是通过测试不同情况下的入参与之相应的出参信息来判断接口是否符合或满足相应的功能性、安全性要求。原创 2024-05-10 15:35:10 · 3800 阅读 · 0 评论 -
Pytest的配置-pytest.ini
pytest.ini:pytest测试框架的主配置文件,可以改变pytest的默认行为比如:[pytest]#指定执行时候的默认信息addopts= -v -s将常用的命令行参数设置为默认,省去重复输入的工作原创 2021-07-20 22:06:09 · 483 阅读 · 3 评论 -
Pytest的fixture的应用
目录fixture在ui自动化中的应用:fixture在api自动化中的应用:conftest.pyConftest.py使用范围fixture是在测试函数运行前后import pytest @pytest.fixture()def login(username='wuya',password='admin'): if username=='wuya' and password=='admin': return 'sdrtyuds344dfgs.原创 2021-07-20 22:04:28 · 285 阅读 · 0 评论 -
Pytest参数化 ---parametrize
参数化的本质就是:对列表中的对象循环,然后再赋值给具体的对象import pytestdef add(a, b): return a + b@pytest.mark.parametrize('a,b,result', [ (1, 2, 3), (2, 3, 5), ('Hi,', 'xia', 'Hi,xia'), (1.0, 1.0, 2.0), (1, 1.0, 2.0), (0, 0, 0)])def test_add_ma.原创 2021-07-20 22:00:07 · 250 阅读 · 0 评论 -
Pytest与unittest区别
api的编写:完整的api测试用例中,要考虑到每个测试点的初始化,测试步骤,测试断言还有清理的操作unittest和pytest框架之间的区别:1,unittest需要继承unitttest.TestCase类,pytest不需要继承,可以是函数也可以是类。2,unittest参数化需要依赖第三方库比如说ddt,pytest参数化直接用内部的parametrize3,unittest测试报告是HTMLTestRunner,pytest是Pytest-html或allure4,unitte原创 2021-07-20 21:57:00 · 9139 阅读 · 0 评论