「Python」这个自动化工具让我写代码快了一倍,快来补给
如果你学过 python 进行自动化测试 , 你一定使用过 unittest 。 今天我们要讲的 nose2 是一个高级版本的 unittest 。 他比 unittest 更容易理解 , 用起来也更加方便一些 。
1.快速开始
nose2 在 unittest 的基础上开发的 , 所以如果你之前是用 unittest 做测试 , 但是有想使用 nose2 的新特性 , 你可以在不改变原有代码的情况下直接使用 nose2 。
本文插图
2.安装
nose2 是第三方库 , 需要自己安装 , 直接在 cmd 运行 pip 指令安装:
本文插图
3.运行测试用例
在快速开始当中 , 我们使用了在 python 代码中用 nose2.main() 的方式去运行测试用例 , 这样是完全 OK 的 。
还有另外一种运行方式:直接在命令行通过 nose2 命令运行 。 他会在python文件中查找名称以 test 开头的测试文件 , 并运行它发现的每个以 test 开头的测试函数名称 。
比如说我的项目当中有 test_add.py, test_minus.py 这些文件 , 如果我想运行所有的测试用例 , 只需要在当前文件下输入 cmd 命令 , 他就会自动去查找所有的测试用例 , 然后去执行:
本文插图
3.1.运行指定文件夹下的测试用例
本文插图
我把登录相关的用例都放到一个叫 login_case 的文件夹当中 , 当我执行 nose2 -s login_case 的时候 , 其他的用例是不会执行的 ,nose2 只会去找 login_case 文件夹下面的用例 。
本文插图
3.2.运行指定的测试用例
本文插图
【「Python」这个自动化工具让我写代码快了一倍,快来补给】在这个例子当中:
- login_case 是存储的文件夹
- test_nose2_dir 是文件名称
- test_login 是测试用例方法的名称
如果想测试 test_nose2_dir.py 文件下的所有用例:
本文插图
如果想测试 login_case 文件夹下的所有用例:
本文插图
4.测试用例的命名
为什么 nose2 可以自动查找用例并且执行呢?
是因为他在内部制定了规则 , 然后根据规则去判定 。
比如首先他规定 , 你所有的测试用例文件名称应该以 test 开头 , 如果你不这么做 , 那这个文件就不是测试用例文件 。 以下的文件名都会被判定为测试用例文件:
本文插图
而这一些不会被判定为测试用例文件 , 从而被忽略:
本文插图
5.总结
本篇我们介绍了 nose2 的简单入门:
- nose2 是在 unittest 的基础上实现的 , 可以和 unittest 兼容 , 如果你没有接触过 unittest, 建议先从 unittest 学起 , 很多同学在网上看到一些说 unittest 过时或者是说 unittest 不高级的言论就开始批判 , 不对 。unittest 是 其他 python 单元测试框架的基础 , 没学好 unittest , 其他的框架你也学不好 。
推荐阅读
- 语言最红语言Python跌落榜三,Rust最受喜爱!Stack Overflow 2020报告出炉
- CSDN|儿童节教你用 Python 画出童年回忆
- 铅笔道|这个图书订阅平台新获融资:曾入选YC中国 付费用户10余万覆盖500座城
- 微信号|微信终于有这个功能了!网友:一个重新做人的机会
- 新智元|机器学习团队常用工具总结,人生苦短,我用Python!
- 斜对面的老张|3299!小米MIX3正式发布,虽有遗憾但对得起这个价格,网友:真香
- 搜狐新闻|明天发布!从概念到现实,vivo X50系列这个“微云台”看点十足
- 工具机器学习团队常用工具总结,人生苦短,我用Python!
- 科技一休哥|老罗:不做手机了,还完债后将从事这个行业
- |从Excel中解救你!如何用Python实现报表自动化