一.编写第一个测试函数(用例)

 1 from selenium import webdriver2 3 def testOpenUrl():4     try:5         driver = webdriver.Firefox() # 打开浏览器6         driver.get('http://www.baidu.com') # 访问百度7         title = driver.title # 获取百度首页的title8 9         assert title == '百度一下,你就知道' # 断言
10     except AssertionError:
11         raise AssertionError('断言失败!')
12     driver.quit()

可以看到用例很简单,就是一个普通的函数(驱动浏览器,打开百度首页,断言首页的title是否正确),那么pytest是如何运行测试用例的呢?

我们可以通过cmd终端,并且换到当前用例所在的目录,输入 pytest 即可,运行结果如下所示

Pytest执行用例命令行参数
上面我们已经学会了执行用例的命令 就是pytest, 那么真的就这么简单了吗?其实不然,pytest 还提供了很多可供我们执行用例的命令行参数,下面我们就一一介绍并演示

1.-v  :pytest -v 说明:可以输出用例更加详细的执行信息,比如用例所在的文件及用例名称等
2.-s  :pytest -s 说明:输入我们用例中的调式信息,比如print的打印信息等,我们在上面用例8行加上一句 print(driver.title),我们再运行一下我们的用例看看
3.-m  :pytest -m ”标记“ 说明:执行特定的测试用例。我们再次修改一下我们的用例,并添加一个新的用例

 1 from selenium import webdriver2 import pytest3 4 @pytest.mark.run_this_testcase5 def testOpenUrl():6     try:7         driver = webdriver.Firefox() # 打开浏览器8         driver.get('http://www.baidu.com') # 访问百度9         title = driver.title # 获取百度首页的title
10         print(driver.title)
11         assert title == '百度一下,你就知道' # 断言
12     except AssertionError:
13         raise AssertionError('断言失败!')
14     driver.quit()
15
16 def testBaidu():
17     driver = webdriver.Firefox()  # 打开浏览器
18     driver.get('http://www.baidu.com')  # 访问百度
19     title = driver.title  # 获取百度首页的title
20     assert title == '百度一下,你就知道'  # 断言


我们可以看到只执行了被标记的用例,新添加的用例并没有被执行

4.-k  :pytest -k “关键字” 说明:执行用例包含“关键字”的用例
5.-q  :pytest -q 说明:简化控制台的输出,可以看出输出信息和上面的结果都不一样, 下图中有两个…点代替了pass结果

第三:Pytest框架之命令行参数(一)相关推荐

  1. python编写命令行框架_python的pytest框架之命令行参数详解(上)

    前言 pytest是一款强大的python自动化测试工具,可以胜任各种类型或者级别的软件测试工作.pytest提供了丰富的功能,包括assert重写,第三方插件,以及其他测试工具无法比拟的fixtur ...

  2. 第四:Pytest框架之命令行参数(二)

    前言 上篇博客说到命令行执行测试用例的部分参数如何使用?今天将继续更新其他一些命令选项的使用,和pytest收集测试用例的规则! Pytest执行用例命令行参数 –collect-only:罗列出所有 ...

  3. pytest合集(3)— 命令行参数

    1.命令行参数大全 使用 pytest -h 可以查看 pytest 的命令行参数,有 10 大类共 132 个. 详见:Python pytest 132 个命令行参数用法 - 习久性成 - 博客园 ...

  4. Python自学笔记(二)命令行参数使用

    前言   当我们在写完多个pyhon脚本时,怎么去使用这些脚本也成为一个问题.我们写的这些脚本对于使用者来说是封闭的存在,为了让我们的脚本文件更加灵活,我们可以通过命令行参数给脚本传入相应的数据并运行 ...

  5. Pytest之收集用例及命令行参数

    VOL 146 28 2020-07 今天距2021年156天 这是ITester软件测试小栈第146次推文 点击上方蓝字"ITester软件测试小栈"关注我,每周一.三.五早上  ...

  6. python 命令-python解析命令行参数的三种方法详解

    这篇文章主要介绍了python解析命令行参数的三种方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 python解析命令行参数主要有三种方法: ...

  7. pytest中pytest_addoption用法 动态添加命令行参数 (钩子函数)

    考虑场景: 我们的自动化用例需要支持在不同测试环境运行,有时候在dev环境运行,有时候在test环境运行: 有时候需要根据某个参数不同的参数值,执行不同的业务逻辑: 上面的场景我们都可以通过" ...

  8. 【pytest】Hook 方法之 pytest_addoption :注册命令行参数

    Hook 方法之 pytest_addoption : pytest_addoption 可以让用户注册一个自定义的命令行参数,方便用户将数据传递给 pytest: 这个 Hook 方法一般和 内置 ...

  9. pytest十二:cmd命令行参数

    命令行参数是根据命令行选项将不同的值传递给测试函数,比如平常在 cmd 执行"pytest -html=report.html",这里面的"-html=report.ht ...

最新文章

  1. java用画线写字_用Java画线
  2. react useRef()函数
  3. Java基础:正则表达式
  4. JUC重要辅助类(同步组件及锁)
  5. 个人笔记 Vue.js, Framework7, and Cordova / PhoneGap Template with Babel, Webpack and Hot Reloading...
  6. c语言实现感知器算法,感知器算法(c语言版).doc
  7. af_netlink_Linux Netlink通信机制详解(上)
  8. 矩阵乘法+快速幂+序列递推公式
  9. eclispe 下载与安装
  10. #金项奖获奖项目专题# | 京东闪付---快人一步
  11. Java 调用SAP PI PO 的Rest JSON接口
  12. Java经典兔子问题(10个月幼兔,小兔,成兔数量各多少对?)
  13. iOS基础:【屏幕成像与卡顿】屏幕撕裂 Screen Tearing、 掉帧 Jank、三缓冲 Triple Buffering
  14. LayUi——OA项目 03(会议排座送审)
  15. Py之pycocotools:pycocotools库的简介、安装、使用方法之详细攻略续篇
  16. 细谈网络同步在游戏历史中的发展变化(中)
  17. 服务器数字显示器,服务器数字KVM切换器
  18. 工业智能网关BL110详解之5:实现三菱 PLC FX1S 接入华为云平台
  19. Linux中更新pycharm即删除旧的pycharm,装新的pycharm
  20. office Excel中的vlookup函数的使用

热门文章

  1. 徐中约与《中国近代史》 (zz)
  2. 移动游戏开发图书推荐
  3. Mongodb源码分析--Mongos之分布式锁
  4. 浏览器启动__chrome浏览器
  5. hdu 5710 Digit-Sum (构造题)
  6. 对AngularJS的编译和链接过程讲解一步到位的文章
  7. Eclipse打JAR包的使用
  8. Programming Ruby学习笔记一
  9. java.sql.SQLException: Access denied for user ‘‘@‘localhost‘ (using password: NO)报错问题解决
  10. 1.0Tensorflow中出现编译问题的解决方案