云计算百科
云计算领域专业知识百科平台

使用python+pytest做接口测试时的那些傻瓜时刻

一、测试用例不按照我设置的执行顺序来执行?

先说下背景:写了两个接口一个登录,一个新增,新增接口需要先登录

我试图通过拖拽文件夹,改变其顺序

我试图通过标记用例执行顺序—-这个方法还有点复杂(对于我来说,需要安装插件的都复杂)先安装pytest-ordering 插件,然后在用例上方标记

@pytest.mark.run(order=2)

当然以上方法都没成功,要不然我都不会发现自己^o^如此愚昧

后来问了同事(左右都是大佬)

解释了下用例执行顺序:按目录和文件名的字母顺序,然后在每个文件中按从上到下的顺序执行测试函数。

对,就是我用例命名的问题,新增我用的add,登录用的login,所以它总是会先执行add,然后找不到中间变量就报错

最后,把登录改成test1,新增改成test2就对了。

撒花;;;;;

二、安装了allure插件,为何执行后没生成报告?

我完成了以下操作:

1.安装allure-pytest插件(甚至安装了两次)

2.在pytest.ini配置文件中添加

addopts= –alluredir=./temps –clean-alluredir
注:alluredir是用来指定报告缓存存储地址,–clean-alluredir 表示每次执行前先清空文件夹中的已有数据

3.在main()中添加构建报告语句

os.system("allure generate ./temps -o ./reports –clean")

完成以上操作我就开始了第一次的运行,但是完全没有报告生成……

然后我想,难道是它不能自动添加缓存文件夹及报告文件夹?所以我在项目下新增了两个文件夹,如下(当然,文件夹命名可以不这样,但需要和配置文件的名字及执行文件中的名字保持一致哦)

5.添加缓存文件夹、报告文件夹

是的,完成这一步,我又开始运行了,我就是这样没耐心,操作一步执行一步

然而不出所料,还是没报告

但是,我没放弃

有想到了一点:难道是因为用例中没定制报告中的内容?影响它发挥?

所以我开始了定制用例:

6.定制用例

这波操作后,我想是完全可以了吧。来吧,展示

对,你没看错,结果就是上面,跟没改之前一模一样—–

接下来实在没招了,开始翻我的葵花宝典了(此处省略一万字…………………………)

你猜怎么着???

是我没安装allure报告……

所以接下来得先安装

第一步:官网下载

下载地址:https://github.com/allure-framework/allure2/releases

选择:zip版本下载并解压(解压到无中文路径下)

第二步:将解压后的allure文件bin路径添加到系统环境变量中

第三步:检查是否安装成功 allure –version(如果环境变量已添加,pycharm中没显示版本号,可重启pycharm)

补充:报告文件夹、缓存文件夹不需要手动新增,执行时会自动创建

看到下面这个就说明创建成功了

至此,无话可说了,就是一句话:菜就多练(说我自己的^.^)

教你如何查看allure报告

1.本地查看

2.在其他网络中可查看(假如你需要发给领导或其他人)

allure open ./reports

注: open 后面是写的报告的文件夹路径

再提醒以下:发给别人把127.0.0.1要改成IP地址(这很基础,但咱热心)

至此,我们就可以看到报告的初始样子啦

赞(0)
未经允许不得转载:网硕互联帮助中心 » 使用python+pytest做接口测试时的那些傻瓜时刻
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!