I often want to have the same unit test applied to data multiple items that are roughly equivalent (two non-empty strings). Currently I implement these in multiple unit test methods, with names like MethodNonEmptyValidString1 and MethodNonEmptyValidString2. This has a bit of a code smell to me.
Is it better to have the multiple data items in one method with multiple asserts? Is there another design pattern that models this more accurately?