Я добавил несколько других предложений в проблему cover.py об этом .
Некоторые другие возможности, как справиться с этим более изящно:
Вы можете установить регулярное выражение Прагма cover.py так, чтобы некоторые строки автоматически прагматически отображались:
[report]
partial_branches =
pragma: no branch
\.select\(lambda
Теперь любая строка, соответствующая любому из двух регулярных выражений, будет считаться частичной ветвью, поэтому ваша строка распознается даже без комментария.
Вы можете отделить определение лямбда-выражения или выражения генератора от строки, в которой они используются:
to_select = lambda p: p.nom_d_exercice.lower().startswith(chaine.lower()) # pragma: no branch
return Praticien.select(to_select)
или
to_delete = (j for j in MyEntityClass if j.deleted == True) # pragma: no branch
delete(to_delete)
Это изолирует неиспользуемый код от его собственной строки, поэтому вы не рискуете отключить измерение покрытия на линии, которая действительно в этом нуждается.