如何修改DDT库下HtmlTestRunner用例标题过长问题

上一篇文章我们展示了如何使用HtmlTestRunner实现unittest框架下测试保报告,但遗留了一个用例标题过长的问题,下来我们总结下实现的原理和方式。

先看一下DDT下的接口测试的用例显示:

我们看到在这个名称是由test_get_commonapi方法名,01测试序号以及ddt解包的参数列表加”_“ 间隔组成。例如:

test_get_commonapi_01___http___127_0_0_1_api_login______username___admin___password___123456________content_type____application_json______post____json____success1______msg____loginvar__

那我们来看一下这个title是如何成为这样的。

看了ddt源码之后,发现有个函数是用来生成测试用例名字的。这个函数叫:mk_test_name

它接主要接受两个参数:name和value

然后生成测试用例名称的变量叫做test_name

上面的源码我们可以看到,ddt内部函数是用name,index,value来组成用例名称的,进一步我们调试看一下:

源码通过正则组成以_连接的字符序列。

所以我们需要改这里就可以了,将你所需要的标题或者某一个列的字段显示即可,这里比如我只要显示url为用例名称:

我加一段字符截取,取url即可,效果如下:

看是不是省了很多空间,这样就可以改变ddt下的用例名称显示,当然也有其他操作方式,原始的value可能是list或者dict,所以依然可以使用数据解析的方式获得想要的字段内容作为标题。

公主耗:shenjitest回复666领取最新一线大厂面试资料,面试题。以及整理最前沿的测试技术人员发展路线图和技能路线。

关注公主耗获取更多干货

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。