 <p>How about this:</p> <pre><code>[TestFixture] public class Tests { [Test] public void Test() { var obj = new MyClass(); obj.First = "some value"; obj.Second = "some value"; obj.Third = "some value"; AssertPropertyValues(obj, "some value", x =&gt; x.First, x =&gt; x.Second, x =&gt; x.Third); } private void AssertPropertyValues&lt;T, TProp&gt;(T obj, TProp expectedValue, params Func&lt;T, TProp&gt;[] properties) { foreach (var property in properties) { TProp actualValue = property(obj); Assert.AreEqual(expectedValue, actualValue); } } } </code></pre>