Ich bin ziemlich neu in der Unit-Tests und experimentiere derzeit ein wenig mit Visual Studio Test-Tools.Wie Modell Parallelität in Komponententests?
Meine Frage ist, wie in diesen Tests Aussagen über gleichzeitigen Verhalten zu definieren. Z.B. eine Klasse BoundedChan<T>
einen beschränkten Kanal Implementierung, da, wie kann ich Tests angeben wie
- „
channel.Send
wird nicht blockieren“ oder - „Wenn die Kapazität des Kanals überschritten wird,
channel.Send
wird blockiert, bis ein Wert gelesen wird“
Gibt es eine elegante Lösung, um diese Behauptungen zu schreiben?
Ich bin mir nicht sicher, gibt es irgendwelche genaue Duplikate (obwohl diese nah ist: http: // stackoverflow.com/questions/314580/how-do-i-perform-unit-test-using-threads), aber es gibt ziemlich viel gutes SO-Material dazu. Ich habe einige der besseren Diskussionen in meiner Antwort hier aufgelistet: http://stackoverflow.com/questions/1520539/how-to-prove-that-multithreading-is-working/1520619#1520619. –
@Jeff: Warum postest du das nicht als Antwort - Sieht für mich ziemlich nützlich aus. – Dario