Selenium unittest 中只 def 一个用例函数的情况下怎么生成多条报告

666 · 2016年12月16日 · 最后由 冷月醉夕阳 回复于 2017年09月07日 · 2552 次阅读

上图是用例部分,只定义了一个函数 test_1(),test_1() 的作用是按照顺序从 Excel 中读取测试步骤并执行

上图是 Excel 中的测试步骤。

下图是 HTMLTestRunner 测试报告:

我的问题是:

按照这样执行完毕后,在 HTMLTestRunner 测试报告中只显示一条测试记录(因为只定义了一个 test_1()),如果想要 Excel 中的每个步骤(对应每行)都单独显示在报告中,有没有办法实现?

共收到 9 条回复 时间 点赞

应该有方法可以实现,我目前用的是重新写入个 Excel,并且添加输出错误的日志保存到出错行的数据,也就是 Excel 和 html 结合,或者只看 Excel

666 #2 · 2016年12月21日 Author

#1 楼 @automation 这也是种方法,我之前也是全部将测试结果保存到 Excel 中(也就是在 Excel 的测试步骤后增加测试结果和报错日志列),没用到 HTMLTestRunner,这次主要是看到使用 HTMLTestRunner 可以自动展示结果,比较省事😃

3楼 已删除

直接参数化运行,不要再 test_1 里面读取用例,读取完了之后注入 case。
https://pypi.python.org/pypi/ParamUnittest#downloads

666 #5 · 2016年12月22日 Author

#4 楼 @tongshanshanshan 谢谢!学习了下 paramunittest 的使用,这种方式很有效!!!👍 👍 👍

这样会不会不方便阅读和维护?

666 #8 · 2016年12月23日 Author

#7 楼 @tester_all 你说的不方便阅读维护是指哪方面?是指下图中的参数全部列出来吗?实际上参数是在 Excel 中配置,然后读取 Excel 将参数传进来,这只是个例子

实际上是这样的:

testng 有 dataProvider 搞定,unittest 也有类似的功能

我觉得还不如直接自己写一个 excel 报告来得直观

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册