Have you tested this with a real test blend file?
I don't understand why you need this test_id parameter? The advantage of identifying tests by name is that you don't have to maintain a list of indices every time you add or remove a test, so having a test_id here doesn't really solve that problem.
as discussed, make it private (by renaming it _check_for_unique) and call it in constructor
This seems unnecessary
You have 3 in statements. Can you try to think of a cleaner way? Don't waste too much time on this though, it's not critical
These can be merged into one line. Remove the print statement.