问题描述
今天在对强化学习的Gradient Bandit进行编码测试的时候,在主函数中多次执行测试函数,出现以下两个问题:
-
在主函数运行test_6测试函数时,传入的参数是3000,但是绘图结果只显示1000,也就是test_6默认参数值。![测试函数](https://img-blog.csdnimg.cn/20210320122225917.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjI3ODg4MA==,size_16,color_FFFFFF,t_70)
![测试结果](https://img-blog.csdnimg.cn/2021032012245137.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjI3ODg4MA==,size_16,color_FFFFFF,t_70)
-
多次运行后,出现一次fixture 'xxx' not found
错误。
解决方案
可以发现,test_6函数前有绿色的可执行标记。
![测试函数](https://img-blog.csdnimg.cn/2021032012284938.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjI3ODg4MA==,size_16,color_FFFFFF,t_70)
PyCharm将test、test_开头的函数视作测试函数,将test_6函数名改成mytest_6即可。
修改后的函数前绿色可执行标记消失,参数也能正常传入。
![测试函数](https://img-blog.csdnimg.cn/20210320123404599.png)
![测试结果](https://img-blog.csdnimg.cn/20210320123452432.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjI3ODg4MA==,size_16,color_FFFFFF,t_70)