“Local Mock Variables” – ein dritter eleganter Weg in JMockit ?

 

Das JMockit-Framework [1] bietet mit seinen “Behavior-Based Testing”-Möglichkeiten (Expectations-API) grundsätzlich zwei Wege für Java Types (Interface, Class) einen Mock zu deklarieren. Manchmal wäre ein dritter Weg hilfreich.

JMockit unterstützt die Fähigkeiten 1. + 2. “out of the box”, die 3. Art nicht unmittelbar:

» 1. Mock-Deklaration als Class Field
» 2. Mock-Deklaration als Method Parameter
» 3. Mock-Deklaration als Local Variable ?

Grundsätzlich ist es mit JMockit denkbar einfach und elegant einen Java Type als Mock zu deklarieren:
über Annotation.

Das gilt für die Reference Types:
Interface, "concrete" Class, abstract Class, final Class, enum und auch für Annotations selbst.

Wird einer Deklaration z.B. ein @Mocked (oder @NonStrict, …) vorangestellt, wird zur Laufzeit bei Nutzung des so gekennzeichneten Java Type automatisch ein “Mock” generiert (static oder “non” static – beides ist möglich). Eine “Mocked” Instance ist somit niemals null.

Nachfolgend eine kurze Skizzierung der zwei bekannten Wege und die Beschreibung eines dritten, möglicherweise eleganten weiteren Weges.


... vielleicht sind auch diese » Scrum-Themen interessant ...

  2 Responses to ““Local Mock Variables” – ein dritter eleganter Weg in JMockit ?”

  1. Gibt es ein URL zum Download eines lauffähigen Snippet? Hugo

 Leave a Reply

(required)

(required)


9 + six =

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

© 2011 cu @Boeffi .net Impressum / Imprint Suffusion theme by Sayontan Sinha