Non credo che il framework di test unitario ti possa aiutare.
I framework di test delle unità sono stati progettati per risolvere questi problemi:
- Registra automaticamente i test delle unità.
- Seleziona quali test eseguire a seconda della riga di comando o di altri argomenti.
- Semplifica l'inizializzazione e la deinizializzazione ripetute.
- Segnala i valori utilizzati nelle condizioni non riuscite.
Ora non vedo come qualcuno di quelli ti possa aiutare. Hai una lunga lista di test, che devi applicare al documento, devi eseguire tutti i test, non vuoi inizializzare e deinitializzare separatamente per ogni test e hai bisogno di messaggi che descrivono cosa c'è di sbagliato nel documento, non scarico di alcuni oggetti casuali che hai confrontato per controllare.
Soprattutto questo test di isolamento e il fatto, che i quadri di test unitari non sono generalmente progettati per essere eseguiti su set di dati forniti dall'esterno, probabilmente lo ostacoleranno più di qualsiasi altra cosa possa aiutarti. Perché devi scrivere i test stessi nel linguaggio raw comunque e questo è quasi tutto il lavoro che c'è.
Quindi direi semplicemente scegliere una lingua che conosci, una buona libreria di analisi XML, che ti darà un comodo accesso all'albero dei documenti e basta scrivere una semplice applicazione con quella.
Modifica annuncio: .NET ha un compilatore (gli dai XSD e sputa le definizioni di classe, può andare anche nell'altro modo) per generare la rappresentazione dell'oggetto corrispondente al documento dal suo XSD, che è di gran lunga il metodo più conveniente per accedere agli elementi del documento e verificherà che il documento sia conforme all'XSD come effetto collaterale. Quindi consiglierei di usarlo per leggere il documento. Questo non ha nulla a che fare con il test unitario, naturalmente.