Wie schreibt man Komponententests, die Gleichzeitigkeitsinvarianten testen

9

Es gibt noch andere Fragen zu diesem Thema, aber ich versuche herauszufinden, wie man Unit-Tests so etwas angehen kann:

%Vor%

Dies ist mein Homespun-Sperrmechanismus (nur für Lernzwecke). Wie würde ich die Thread-Sicherheit davon testen? Ich weiß, dass es keine Garantien gibt, wenn es darum geht, simultanen Code zu testen, aber wie würde ich überhaupt einen Komponententest schreiben, der versucht, die offensichtlichen Invarianten dieses Locking-Mechanismus zu testen?

    
LuxuryMode 31.01.2012, 22:06
quelle

1 Antwort

5

Ich denke, ich werde meine eigene Frage beantworten, seit ich recherchiert habe. Es gibt ein tolles Framework namens MultithreadedTC . Es ermöglicht Ihnen, Tests wie folgt einzurichten:

%Vor%

wobei die Aufrufe waitForTick (int) den aktuellen Thread-Block bilden, bis das Häkchen erreicht ist. Es gab sogar einige Entwicklungen, um dies für eine bessere JUnit-Integration etwas moderner zu gestalten: Ссылка

    
LuxuryMode 01.02.2012 03:38
quelle

Tags und Links