Selenium + Pytest + Python

标题目录

一、概述
二、环境搭建
三、编写规则
四、Selenium+Pytest案例实操
五、扩展插件
六、conftest配置
七、最后

一、概述

Selenium:
1、基于JavaScript代码库的自动化测试框架,通过脚本语言,模拟用户行为操作,最接近用户真实场景,实现对web自动测试。

2、Selenium,是目前的最火爆企业最主流的webUI自动化框架

Pytest:
1、Pytest是一个非常成熟的全功能的Python测试框架,是unittest框架的扩展,主要特点有以下几点:
(1)简单灵活,非常方便的组织自动化测试用例;
(2)支持参数化,可以细粒度地控制要测试的测试用例;
(3)能够支持简单的单元测试和复杂的功能测试,比如web端selenium/移动端appnium等自动化测试、request接口自动化测试;
(4)pytest具有很多第三方插件,并且可以自定义扩展,比如测试报告生成,失败重运行机制;
(5)测试用例的skip和fail处理;
(6)结合业界最美的测试报告allure+Jenkins,持续集成。

二、环境搭建

pip install - U pytest

pytest-xdist       #多线程

pip install - U pytest-rerunfailures     #重试运行cases

pip install  pytest-html    #生成测试报告

pytest --version      # 会展示当前已安装版本

三、编写规则

编写pytest测试样例非常简单,只需要按照下面的规则:
(1) 测试文件以test_开头(以test结尾也可以);
(2)测试类以Test开头,并且不能带有 init 方法;
(3)测试函数以test
开头;
(4)断言使用基本的assert即可。

四、Selenium+Pytest案例实操

import pytest # 引入pytest包
 def test_a(): # test开头的测试函数
     print("------->test_a")
     assert 1 # 断言成功
 def test_b():
     print("------->test_b")
          assert 0 # 断言失败
 if __name__ == '__main__':
        pytest.main(['-s', 'class01.py'])

可以包含一个或多个Test开头的测试类,test_开头的函数
1、测试类主函数模式
pytest.main([’-s’, ‘test.py’])
2、命令行模式运行
pytest 文件路径/测试文件名

五、扩展插件

1、测试报告: pytest-html

pytest.main([’-s’,‘test.py’,’–html=./report/result.html’])
:表示当前路径下生成report文件夹,result.html文件


2、批量运行用例:pytest-xdist
pytest.main([’-s’,‘test.py’,’–html=./report/result.html’,’-n=2’])
-n=2 表示2个线程并发运行所有的测试用例

3、allure测试报告:allure-pytest
运行用例:pytest.main([’-s’, ‘-q’, ‘–alluredir’, ‘./report/xml’])
pytest 测试目标文件 --alluredir 数据目录
运行后的结果,是生成xml的数据集合
生成报告:allure generate --clean ./report/xml/ -o ./results/html/
第一个是数据集目录,第二个是生成报告目录
-o是指向目标生成测试报告的目录;

六、conftest配置

当自动化用例越来越庞大的时候,很多用例的数据可以共享,复用,让用例脚本可读性,维护性更高,比如登录等

conftest.py 配置里可以实现数据共享,比如py跨文件共享前置

conftest.py配置脚本名称是固定的,不能改名称

不需要import导入 conftest.py,pytest用例会自动查找


使用Pytest框架后,能深深地感受到它的可扩展性和灵活性,再也不用担心自动化效率低了。

七、最后

对软件测试、接口测试、自动化测试、软件测试零基础入门、性能测试、LR脚本开发、python自动化全栈、面试经验感兴趣可以175317069,群内会有不定期的发放免费的资料链接。如果你有好的学习也资料可以私聊发我,我会注明出处之后分享给大家。

喜欢的话,欢迎【点赞】、【关注】、【喜欢】礼貌三连喔!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,907评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,987评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,298评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,586评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,633评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,488评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,275评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,176评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,619评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,819评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,932评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,655评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,265评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,871评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,994评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,095评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,884评论 2 354