I suggest using XUnit
and XUnit.Extensions
, both available through nuget.
Decorating a test method as a [Theory]
and [ClassData]
will let you specify a source as complex as you wish, letting you to deal how you wish to deserialize (in this here case) your XML source. You can then inject the expected results as parameters of your test method. You will also loop through "rows" of objects, and again it's up to you to define what you want to treat as a row.
Hmm, I'm not certain it's very comprehensible, but you should take a look at this small blog post, it clearly explains with examples how you deal with it.
Conclusion: XUnit is a great testing framework, and will integrate nicely with Visual Studio test panel and such. Syntax is also mostly the same. Plus, it's free.