OK, also die @Ignore
Anmerkung ist gut geeignet, um zu markieren, dass ein Testfall nicht ausgeführt werden soll.
Manchmal möchte ich jedoch einen Test aufgrund von Laufzeitinformationen ignorieren. Ein Beispiel wäre ein Gleichzeitigkeitstest, der auf einem Rechner mit einer bestimmten Anzahl von Kernen ausgeführt werden muss. Wenn dieser Test auf einem Einprozessor-Rechner ausgeführt würde, wäre es meiner Meinung nach nicht korrekt, den Test einfach zu bestehen (da er nicht ausgeführt wurde), und es wäre sicherlich nicht richtig, den Test fehlschlagen zu lassen und den Build zu unterbrechen.
Ich möchte also in der Lage sein, Tests zur Laufzeit zu ignorieren, da dies das richtige Ergebnis zu sein scheint (da das Test-Framework den Build passieren lässt, aber aufzeichnet, dass die Tests nicht ausgeführt wurden). Ich bin mir ziemlich sicher, dass die Annotation mir diese Flexibilität nicht bieten wird, und vermute, dass ich die Testsuite für die betreffende Klasse manuell erstellen muss. In der Dokumentation wird jedoch nichts darüber erwähnt, und ein Blick in die API Es ist auch nicht klar, wie dies programmatisch zu bewerkstelligen wäre (d.h. wie erstelle ich programmatisch eine Instanz von Test
oder ähnliches, die derjenigen des @Ignore
Bemerkung?).
Wenn jemand in der Vergangenheit etwas Ähnliches gemacht hat oder eine gute Idee hat, wie ich das anders angehen könnte, würde ich mich freuen, davon zu hören.