我正在使用HTMLTestRunner为我的单元测试创建HTML报告。我认为提供的here HTMLTestRunner的代码是为python 2及之前编写和优化的,因为我有三个与python 3不兼容的错误,比如使用 StringIO而不是io 。
现在,第639行在此代码段中定义了has_key
方法
def sortResult(self, result_list):
# unittest does not seems to run in any particular order.
# Here at least we want to group them together by class.
rmap = {}
classes = []
for n,t,o,e in result_list:
cls = t.__class__
if not rmap.has_key(cls):
rmap[cls] = []
classes.append(cls)
rmap[cls].append((n,t,o,e))
r = [(cls, rmap[cls]) for cls in classes]
return r
由于python 3已将has_key
从python 3中移除,因此我收到有关此错误的错误。由于我对python不太熟悉,因此我搜索并发现in
可能是一个合适的替代品。那么我该如何替换这个has_ key
方法呢?我尝试将has key
替换为in
,但失败并出现无效的语法错误。