前言
经常有人在群里反馈,明明代码一样的啊,为什么别人的能出报告,我的出不了报告,为什么别人运行结果跟我的不一样啊。。。
这种问题先检查代码,确定是一样的,那就是运行姿势不对了,一旦导入unittest模块,pycharm会自动识别以unittest的姿势去运行了。
ps:我也被它坑苦了,反复检查代码都没毛病,执行完愣不是自己想要的结果,后来发现是由于执行方式选择的问题。
一、unittest运行单个用例
1.如下代码,如果我只想运行其中的一个,如test01,如何运行呢?
2.如果想运行哪个用例,鼠标放到对应的区域,右键就能直接运行单个用例了
3.注意上图红色框框,显示的是Run 'Unittest test01',这个意思很明显,就是说以unittest的方式只运行test01
如果想运行test2,鼠标放到test2区域右键,就会显示:Run 'Unittest test02'
二、unittest运行整个脚本用例
1.如果想当前的脚本上所有的用例一起执行,只需把鼠标放到if __name__ == "__main__":这句话的后面或者下方就行了
2.上图显示的是Run Unittest in test1 运行的是整个脚本
三、python直接运行模式
1.以上方式只能执行单元测试框架里面的内容,是没有测试报告的输出的,如果想输出测试报告,就得以非unittest模式运行,也就是用python直接运行
2.点右上角,点开:Edit Configurations
2.展开Python 和 Python tests这两个选项,会发现刚才运行的脚本名称在Python tests这个选项下,也就是pycharm这个工具自动默认为unittest姿势运行了。
3.解决办法,只需从这里移除掉就行,选中这个脚本,点左上角的减号:一
4.全部移除后,点Apply应用,然后点OK保存
5.再回到脚本界面,右键运行,就能出测试报告了
(敲黑板了!!!鼠标一定要放在if这一行后边右键,才能看到正常显示Run ‘’test1‘’)
注意:
如果右键还是不能选择python运行方式,再次点击右上角,点开:Edit Configurations,如图。
点击左上角加号“+”,选择Python。
起个名字,选择你要执行的测试脚本,点击“Apply”,再点击“OK”。
保存后以后,会在右上角看到刚刚保存的python运行方式,点击右侧绿色小三角,即是使用python执行脚本。