PyCharm上unittest 测试用例两种执行方式

每次讲到unittest测试框架的时候,经常有同学在群里反映,为啥我的运行不是按照我往suite里添加的用例顺序执行的,为什么别人的能跑出来报告,我的就不行...

当然,首先确认代码是OK的,如果代码没有问题,那多半就是执行方式不太对了,我们分别来看看两种执行方式。

01

unittest 执行方式

这种执行方式是pycharm自带的,首先看一下下面这段测试代码:

    import unittest

class TestCase(unittest.TestCase):

   def setUp(self):

       print("Before every test case!")

   def test_case_01(self):

       print("this is test case 1")

   def test_case_02(self):

       print("this is test case 2")

#大家可以认为这是一个类似于

if __name__ == "__main__":

   unittest.main()

如果想运行这段代码,我们可以直接在PyCharm中if __name__ == "__main__": 这一句的下面击右键,然后选择 run unittest for teststudy

这样就是调用PyCharm中的unittest插件运行了我们当前这个测试类。

PyCharm中的unittest插件功能很强大,不仅可以运行整个测试类,还可以选择其中某一个测试用例执行,比如,我只想执行test_case_01,可以将鼠标移到test_case_01区域,然后点击右键,这样可以实现执行单独一条测试用例。

或者,可以点击测试用例左边的小运行图标,都可以实现执行单条测试用例

上面的这些执行方式虽然入口不一样,但是都是借助PyCharm的unittest插件进行运行,这种执行方式的缺点是依赖PyCharm,以及无法生成报告,如果想生成测试报告,就要考虑Python运行方式。

02

Python运行方式

Python运行方式可以直接在命令行中调用。

在这里,要注意,只有添加了这段代码,才能唤醒神龙,调用起Python运行方式

if __name__ == "__main__":

unittest.main()

这段代码可以理解为是一个主函数,当前这个Python文件的入口。

当然除了在命令行,我们也可以在PyCharm中添加运行方式,选择Edit Configurations

点开之后,发现里面已经有了一些运行方式,通过名称可以看出来,这些都是unittest的运行方式。

那Python的运行方式如何添加呢,我们可以点击左上角的+号,选择Python


 

然后将我们添加的这个文件添加到script path 中

接着,我们就能在右上角看到我们刚刚添加的运行方式,直接选择这个运行按钮,就可以用Python的运行方式去运行了

如果后面要添加报告应用或者用testsuite组织用例顺序,只要在if __name__ == "__main__": 代码后面添加,然后直接用Python方式运行就可以了。

例如:

 

 

最后,希望本文可以帮助大家。

作  者:Testfan  Chris

出  处:微信公众号:自动化软件测试平台

版权说明:欢迎转载,但必须注明出处,并在文章页面明显位置给出文章链接

posted @   码同学软件测试  阅读(2280)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示