前言

上一篇pytest文档2-用例运行规则已经介绍了如何在cmd执行pytest用例,平常我们写代码在pycharm比较多
写完用例之后,需要调试看看,是不是能正常运行,如果每次跑去cmd执行,太麻烦,所以很有必要学习如何在pycharm里面运行pytest用例

pycharm运行三种方式

1.以xx.py脚本方式直接执行,当写的代码里面没用到unittest和pytest框架时,并且脚本名称不是以test_开头命名的,此时pycharm会以xx.py脚本方式运行

2.当脚本命名为test_xx.py时,用到unittest框架,此时运行代码,pycharm会自动识别到以unittest方式运行

3.以pytest方式运行,需要改该工程设置默认的运行器:file->Setting->Tools->Python Integrated Tools->项目名称->Default test runner->选择py.test

备注:pytest是可以兼容unittest框架代码的

pycharm写pytest代码

1.在pycharm里面写pytest用例,先导入pytest

# D:/YOYO/test_class.py** 作者:上海-悠悠 QQ交流群:588402570**import pytestclass TestClass:def test_one(self):x = "this"assert 'h' in xdef test_two(self):x = "hello"assert hasattr(x, 'check')def test_three(self):a = "hello"b = "hello world"assert a in bif __name__ == "__main__":pytest.main('-q test_class.py')

运行结果

.F.                                                                      [100%]
================================== FAILURES ===================================
_____________________________ TestClass.test_two ______________________________self = <YOYO.test_class.TestClass object at 0x00000000039F9080>def test_two(self):x = "hello"
>       assert hasattr(x, 'check')
E       AssertionError: assert False
E        +  where False = hasattr('hello', 'check')test_class.py:11: AssertionError
============================== warnings summary ===============================
<undetermined location>passing a string to pytest.main() is deprecated, pass a list of arguments instead.-- Docs: http://doc.pytest.org/en/latest/warnings.html
1 failed, 2 passed, 1 warnings in 0.06 seconds

2.运行结果“.F. ” 点是代表测试通过,F是Fail的意思,1 warnings是用于pytest.main('-q test_class.py')里面参数需要传list,多个参数放list就不会有警告了

pytest.main(['-q', 'test_class.py'])

pycharm设置pytest

1.新建一个工程后,左上角file->Setting->Tools->Python Integrated Tools->项目名称->Default test runner->选择py.test

2.改完之后,再重新建个脚本(注意是先改项目运行方式,再写代码才能出来),接下来右键运行就能出来pytest运行了

3.pytest是可以兼容unittest脚本的,之前写的unittest用例也能用pytest框架去运行

---------------------------------pytest结合selenium自动化完整版-------------------------

全书购买地址 https://yuedu.baidu.com/ebook/902224ab27fff705cc1755270722192e4536582b

作者:上海-悠悠 QQ交流群:874033608

也可以关注下我的个人公众号:yoyoketang

转载于:https://www.cnblogs.com/yoyoketang/p/9366638.html

pytest文档3-pycharm运行pytest相关推荐

  1. pytest文档18-配置文件pytest.ini

    前言 pytest配置文件可以改变pytest的运行方式,它是一个固定的文件pytest.ini文件,读取配置信息,按指定的方式去运行. ini配置文件 pytest里面有些文件是非test文件 py ...

  2. pytest文档21-pytest-html报告优化(nodeid中文显示[\u6350\u52a9\u6211\u4eec]问题解决)

    前言 pytest-html报告中当用到参数化时候,获取用例的nodeid里面有中文时候,会显示[\u6350\u52a9\u6211\u4eec]这种编码(再次声明,这个不叫乱码,这是unicode ...

  3. pytest文档73-pytest+yaml实现接口自动化框架之用例参数关联

    前言 使用 yaml 文件写测试用例的时候,如何在 yaml 文件的测试用例里面实现参数关联? 这是很多做自动化测试的小伙伴经常思考的一个问题. 接着前面的pytest+yaml 文件实现接口自动化框 ...

  4. pytest文档46-关于https请求警告问题(InsecureRequestWarning: Unverified HTTPS request is being made)

    前言 使用 pytest 执行 https 请求用例的时候,控制台会出现警告:InsecureRequestWarning: Unverified HTTPS request is being mad ...

  5. pytest文档56-插件打包上传到 pypi 库

    前言 pytest 的插件完成之后,可以上传到 github,方便其他小伙伴通过 pip 源码安装.如果我们想通过 pip install packages 这种方式安装的话,需上传到 pypi 仓库 ...

  6. pytest文档59-运行未提交git的用例(pytest-picked)

    前言 我们每天写完自动化用例后都会提交到 git 仓库,随着用例的增多,为了保证仓库代码的干净,当有用例新增的时候,我们希望只运行新增的未提交 git 仓库的用例. pytest-picked 插件可 ...

  7. pytest文档48-切换 base_url 测试环境(pytest-base-url)

    前言 当我们自动化代码写完成之后,期望能在不同的环境测试,这时候应该把 base_url 单独拿出来,能通过配置文件和支持命令行参数执行. pytest-base-url 是 pytest 里面提供的 ...

  8. pytest文档25-conftest.py作用范围

    前言 一个测试工程下是可以有多个conftest.py的文件,一般在工程根目录放一个conftest.py起到全局作用. 在不同的测试子目录也可以放conftest.py,作用范围只在该层级以及以下目 ...

  9. pytest文档57-计算单元测试代码覆盖率(pytest-cov)

    前言 我们在做测试的时候,经常遇到领导的灵魂拷问:你的测试用例覆盖率是多少,达到100%了么?你如何保证你的测试质量? 测试用例的覆盖率如何统计呢,如何知道开发的代码,我们都测到了,不会存在漏测的情况 ...

最新文章

  1. python【蓝桥杯vip练习题库】 ADV-364 天天向上(DP)
  2. Linux 中启用 Shell 脚本的调试模式
  3. 数据产品经理从零到一:数据产品能力模型构建
  4. 9.Nexus私服安装配置
  5. ASP.NET Web API身份验证和授权
  6. 昨天是欧洲男人的,今天却属于亚洲女人
  7. WIN10系统 截图或者某些程序时屏幕会自动放大怎么办
  8. 秘密潜入2小辣椒_短暂潜入2次,我显然不知道自己作为开发人员正在做什么
  9. java排序方法调用_Java实现顺序查找、二分查找、冒泡排序、方法调用
  10. 过年,设计师都爱的烫金红色PSD装饰素材
  11. 编译GDAL支持OpenCL使用GPU加速
  12. Android进阶:ListView性能优化异步加载图片 使滑动效果流畅
  13. R语言聚类分析-kmeans聚类分析实战
  14. Java、JSP汽车租赁管理系统
  15. 阿里巴巴高级技术专家:如何成为优秀的技术主管(上篇)
  16. poe摄像头与服务器连接系统图,PoE监控系统的4种连接方式!
  17. 解决投影仪放映PPT时左右、上下出现黑边问题
  18. 针对Object和Array深拷贝处理
  19. [YOLOv7/YOLOv5系列算法改进NO.21]CNN+Transformer——主干网络替换为又快又强的轻量化主干EfficientFormer
  20. 基于maven自动发布-Maven Wagon

热门文章

  1. 移动端点击(click)事件延迟问题的产生与解决方法
  2. 信号公式汇总之傅里叶变换
  3. 计算机技术停滞,究竟什么原因让科技停滞不前呢?
  4. c语言中isnarc变量,C语言 二级 1-40上机模拟试题答案.doc
  5. 自定义模板类(循环队列)
  6. 最大子段和(动态规划及分治法)
  7. php ar 模式,AR技术也被称为什么技术
  8. django-ORM单表操作
  9. ORA-01722: invalid number
  10. NYOJ 613 免费馅饼