Kolekciju salīdzināšana vienumtestos
Sāku iemēģināt vienumtestu rakstīšanu. Jāatzīst, ka viegli nenākas, jo visi materiāli, kurus var atrast tīmeklī, stāsta par to, cik forši ir testēt un rāda triviālus piemērus, bet trūkst materiālu par to, kā tiešām iesākt testēšanu.
Šobrīd esmu pārvarējis sākotnējās problēmas, un uzrakstījis pirmos testus draugiem.lv iesaiņojumam, kā arī atklājis vairākas interesantas lietas. Ar vienu no tām tūlīt padalīšos.
Vienā no testiem man nākas pārbaudīt vai metode atgriež pareizu sarakstu. Sākumā pārbaudi uzrakstīju kā:
Assert.AreEqual(expected.Count, actual.Count);
foreach (var item in expected)
{
Assert.IsTrue(actual.ContainsKey(item.Key));
Assert.AreEqual(item.Value, actual[item.Key]);
}
Vēlāk atklāju, ka ir speciāla klase CollectionAssert, kuru var izmantot kolekciju pārbaudei testos un mana ūberpārbaude vienkāršojas līdz vienai rindiņai:
CollectionAssert.AreEquivalent(expected, actual);
Sīkums, bet patīkami.