Ich bin neu im Komponententest und frage mich, welche Best Practices für Unit Testing xml deserialisation gelten.Komponententest XML-Deserialisierung
Betrachten Sie das folgende xml:
<people>
<person id="1">
<name>Joe</name>
<age>28</age>
</person>
<person id="2">
<name>Jack</name>
<age>38</age>
</person>
</people>
Und die folgende Modellklasse für die Menschen:
[XmlRoot(ElementName ="people")]
public class People
{
public People() { PeopleList = new List<Person>(); }
[XmlElement("person")]
public List<Person> PeopleList { get; set; }
}
public class Person
{
[XmlAttribute("id")]
public int id { get; set; }
[XmlElement("name")]
public string Name { get; set; }
[XmlElement("age")]
public int Age { get; set; }
}
ich deserialisieren die Verwendung von XML:
public List<Person> GetListOfPeople()
{
People plist = new People();
string content;
using (StreamReader sr = new StreamReader(manager.Open("People.xml")))
{
var serializer = new XmlSerializer(typeof(People));
plist = (People)serializer.Deserialize(sr);
}
return plist.PeopleList;
}
Was das Beste wäre, Methoden zum Unit-Test der GetListOfPeople-Methode oben?
Das macht Sinn. Also werde ich eine Testmethode für eine gültige "samlpe.xml" und auch eine Testmethode mit einer ungültigen xml samle haben, die eine ExpectedException attritbute anwendet. Vielen Dank. – cutthejargon