With C# and NUnit, there exists the TestCase attribute and the TestCaseSource attribute, both of which allows unit tests to be parameterized, so that the same "test" can be used multiple times with different input. This reduces code duplication while maintaining readability.
Does something similar exist for Python?
EDIT: @Dunes mentioned subtests, which I should have included as part of this question. Unfortunately, it is a 3.4 only functionality, and I'm looking to support 2.7 and 3.4.