diff --git a/src/_pytest/python.py b/src/_pytest/python.py index cbb82e390..0e9bd2126 100644 --- a/src/_pytest/python.py +++ b/src/_pytest/python.py @@ -1002,7 +1002,14 @@ class IdMaker: # Suffix non-unique IDs to make them unique. for index, id in enumerate(resolved_ids): if id_counts[id] > 1: - resolved_ids[index] = f"{id}{id_suffixes[id]}" + suffix = "" + if id[-1].isdigit(): + suffix = "_" + new_id = f"{id}{suffix}{id_suffixes[id]}" + while new_id in set(resolved_ids): + id_suffixes[id] += 1 + new_id = f"{id}{suffix}{id_suffixes[id]}" + resolved_ids[index] = new_id id_suffixes[id] += 1 return resolved_ids