python自动化测试框架
2024-09-05 00:49:42
一.环境准备
1.python开发环境, python3.7
2.setuptools基础工具包
3.pip安装包管理工具
4.selenium自动化测试工具 chrom驱动下载地址: http://npm.taobao.org/mirrors/chromedriver/
5.pytest自动化测试框架
二.pytest用法
1.命名规则
- 测试文件应该命名为test_.py或_test.py
- 测试方法和函数应该被命名为test_。
- 测试类应该被命名为Test
2.结果类型
- PASSED (.):测试成功。
- FAILED (F):测试失败(或XPASS + strict)。
- SKIPPED (s): 测试被跳过。 你可以使用@pytest.mark.skip()或 pytest.mark.skipif()修饰器告诉pytest跳过测试
- xfail (x):预期测试失败。@pytest.mark.xfail()
- XPASS (X):测试不应该通过。
- ERROR (E):错误
3.执行方法
- pytest test/: 执行test目录下所有文件
- pytest.main(['-s','-v']): 写在代码中执行测试用例,默认执行当前目录及子目录下的所有文件,可以指定执行文件
- py.test -x : 首次失败后停止执行
- py.test --maxfail=2 : 两次失败之后停止执行
py.test -k answer1 -v: 运行所有名字中含有的
answer1
的方法
,
-k 用来匹配名字中包含表达式的方法, -v 增加显示详细信息py.test -m <name>: 运行通过
-m 标记的名字marked
的用例,- @pytest.mark.xfail: Xfail标记的测试将会执行,但是不会被记入失败或成功中,如果失败了,也不会有任何追踪的信息
- @pytest.mark.skip: Skip 则意味着直接跳过,不会执行
四.并行运行测试
- 安装插件pytest-xdist ,运行命令安装:pip install pytest-xdist
- 然后直接运行pytest -n 4即可,-n <num> 表示运用多核,充分利用资源
五.命令行
六.生成HTML报告
- 首先安装插件:
pip install pytest-html
- 运行命令:
py.test -v -s --html=reportName.html
- 你将会在文件目录下生成
reportName.html
,用浏览器打开 上面生成的报告,css是独立的,分享报告的时候样式会丢失,为了更好的分享发邮件展示报告,可以把css样式合并到html里
$ pytest --html=report.html --self-contained-html
七. pytest中setup和teardown用法简介:
- 模块级(setup_module/teardown_module)开始于模块始末,全局的
- 函数级(setup_function/teardown_function)只对函数用例生效(不在类中)
- 类级(setup_class/teardown_class)只在类中前后运行一次(在类中)
- 方法级(setup_method/teardown_method)开始于方法始末(在类中)
- 类里面的(setup/teardown)运行在调用方法的前后
- pytest.fixture():作用于模块内的所有用例,但需要传递装饰函数为参数,可置于class内或class外
八.django框架开发
1.地址:http://127.0.0.1:8000/admin/
2.创建用户: python manage.py createsuperuser 用户名和密码都是:wang***
最新文章
- 解析大型.NET ERP系统 多国语言实现
- elk平台搭建
- 7 个顶级的 HTML5 Canvas 动画赏析
- java怎么建立JAVA工程项目?
- 【iCore3 双核心板】例程十八:USB_VCP实验——虚拟串口
- javaweb---html标签
- dom 左右两侧得广告(兼容IE FF)
- RabbitMQ (四) 路由选择 (Routing) -摘自网络
- mysql Encryption and Compression Functions
- C++编程规范之23:头文件应该自给自足
- 用Python实现gmail邮箱服务,实现两个邮箱之间的绑定(下)
- 屏蔽ps联网激活
- 201521123026 《Java程序设计》第4周学习总结
- SpringBoot: 配置加载顺序
- c编译步骤
- 20162329张旭升 2018-2019-2《网络对抗技术》第1周 Kali的安装
- C++ 重定义、重载、覆盖
- Flink--time-window 的高级用法
- Android测试(四)——内容供应器泄露
- gulp的使用介绍及技巧
热门文章
- python万能消费框架,新增7种中间件(或操作mq的包)和三种并发模式。
- zookeeper+Dubbo环境搭建及简单Demo
- jzy3D从入门到弃坑_2使用jzy3D0.9画2D散点图
- 【Spring Boot学习之七】自定义参数&;多环境配置&;修改端口号&;yml
- mysql 连接远程阿里云数据库
- Intellij IDEA设置类注释和方法注释
- Toping Kagglers:Bestfitting,目前世界排名第一
- Mybaties的简单使用(全当做复习了)
- LeetCode 5198. 丑数 III(Java)容斥原理和二分查找
- 【leetcode】347. Top K Frequent Elements