<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Mockito</id>
	<title>Mockito - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Mockito"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Mockito&amp;action=history"/>
	<updated>2026-05-30T12:07:49Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Mockito&amp;diff=2302742&amp;oldid=prev</id>
		<title>imported&gt;SchlurcherBot: Bot: http → https</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Mockito&amp;diff=2302742&amp;oldid=prev"/>
		<updated>2026-01-24T12:20:53Z</updated>

		<summary type="html">&lt;p&gt;Bot: http → https&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name                 = mockito&lt;br /&gt;
|Logo                 = [[Datei:Mockito Logo.png|Mockito Logo]]&lt;br /&gt;
|Screenshot           = &lt;br /&gt;
|Beschreibung         = &amp;lt;!-- Beschreibung des Screenshots! --&amp;gt;&lt;br /&gt;
|Maintainer           = Szczepan Faber&lt;br /&gt;
|Hersteller           = &lt;br /&gt;
|Management           = &lt;br /&gt;
|Erscheinungsjahr     = &lt;br /&gt;
|AktuelleVersion      = 5.9.0&lt;br /&gt;
|AktuelleVersionFreigabeDatum = 14. Januar 2024&lt;br /&gt;
|AktuelleVorabVersion = &lt;br /&gt;
|AktuelleVorabVersionFreigabeDatum = &lt;br /&gt;
|Betriebssystem       = [[Plattformübergreifend]]&lt;br /&gt;
|Programmiersprache   = &amp;lt;!-- wikidata --&amp;gt;&lt;br /&gt;
|Kategorie            = [[Softwaretest|Test]]-[[Framework]]&lt;br /&gt;
|Lizenz               = &amp;lt;!-- wikidata --&amp;gt;&lt;br /&gt;
|Deutsch              = &lt;br /&gt;
|Website              = &amp;lt;!-- wikidata --&amp;gt;&lt;br /&gt;
|Dateien              = &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Mockito&amp;#039;&amp;#039;&amp;#039; ist eine [[Freie Software|freie]] ([[MIT-Lizenz]]) [[Programmbibliothek]] zum Erstellen von [[Mock-Objekt]]en für [[Modultest|Unit-Tests]] von [[Java (Programmiersprache)|Java]]-Programmen.&lt;br /&gt;
&lt;br /&gt;
== Funktionalität ==&lt;br /&gt;
Im Unit-Test sollen einzelne &amp;#039;&amp;#039;Testobjekte&amp;#039;&amp;#039; (meist [[Klasse (objektorientierte Programmierung)|Klassen]] oder [[Objektorientierte Programmierung#Methoden|Methoden]]) isoliert von ihrer Umgebung getestet werden. Um einen vollständig isolierten Test zu erreichen, müssen die Schnittstellen, über die das zu testende Objekt auf seine Umgebung zugreift, durch Mock-Objekte ersetzt werden. Die Mock-Objekte fungieren dabei als Platzhalter für die echten Objekte.&lt;br /&gt;
Mockito hilft dabei dem Entwickler der Unit-Tests, diese Mock-Objekte samt ihrem Verhalten zu generieren und gegebenenfalls auch zu prüfen, wie diese vom zu testenden Code aufgerufen wurden. Die Mock-Objekte werden dabei ähnlich wie bei anderen Mocking-Frameworks zur Laufzeit dynamisch generiert. Es müssen somit keine Klassen von Hand geschrieben oder deren Quellcode mit denen der echten Klassen synchron gehalten werden. Dynamische Mock-Objekte sind somit sicherer gegenüber [[Refactoring]]. Mittels Mockito können Klassen und Interfaces gleichermaßen gemockt werden.&lt;br /&gt;
&lt;br /&gt;
Mockito unterscheidet sich von anderen Mocking-Frameworks insofern, als mit Mockito die Entwickler das Verhalten des zu testenden Systems verifizieren können, ohne im Vorfeld diesbezügliche Annahmen zu treffen.&amp;lt;ref&amp;gt;{{Internetquelle | url=http://code.google.com/p/mockito/wiki/FeaturesAndMotivations | titel=Features and Motivations | zugriff=2011-05-19 | sprache=en}}&amp;lt;/ref&amp;gt; Damit wird die oft kritisierte enge [[Kopplung (Softwareentwicklung)|Kopplung]] von Unit-Tests an den getesteten Code&amp;lt;ref&amp;gt;{{Internetquelle | url=https://martinfowler.com/articles/mocksArentStubs.html#CouplingTestsToImplementations | titel=Mocks Aren’t Stubs | autor=Martin Fowler | datum=2007 | zugriff=2011-05-19 | sprache=en}}&amp;lt;/ref&amp;gt; reduziert.&lt;br /&gt;
&lt;br /&gt;
== Geschichte ==&lt;br /&gt;
Das mockito-Projekt wurde 2007 ins Leben gerufen vom Programmierer Szczepan Faber, der mit der Komplexität vorhandener Mocking-Frameworks unzufrieden war. Er begann mit der Erweiterung der [[Syntax]] und Funktionalität von [[EasyMock]] –&amp;amp;nbsp;einem ähnlichen Mocking-Framework für Java&amp;amp;nbsp;– schrieb aber schlussendlich den meisten Code für Mockito um.&amp;lt;ref&amp;gt;{{Internetquelle | url=http://monkeyisland.pl/2008/01/14/mockito/ | titel=Mockito | autor=Szczepan Faber | datum=14. Januar 2008 | zugriff=2011-05-19 | sprache=en | archiv-url=https://web.archive.org/web/20100329033254/http://monkeyisland.pl/2008/01/14/mockito/ | archiv-datum=2010-03-29 | offline=ja | archiv-bot=2024-03-21 09:00:51 InternetArchiveBot }}&amp;lt;/ref&amp;gt; Die erste Version von Mockito wurde Anfang 2008 für ein Projekt beim &amp;#039;&amp;#039;[[The Guardian]]&amp;#039;&amp;#039; in London verwendet.&amp;lt;ref&amp;gt;{{Internetquelle | url=http://code.google.com/p/mockito/ | titel=mockito | titelerg=simpler &amp;amp; better mocking | zugriff=2011-05-19 | sprache=en }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Verwendung ==&lt;br /&gt;
Eine mögliche Verwendung von Mockito kann wie folgt aussehen:&lt;br /&gt;
* Klasse, die getestet werden soll:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot; style=&amp;quot;margin-left:2em&amp;quot;&amp;gt;&lt;br /&gt;
class CustomerService {&lt;br /&gt;
    private List&amp;lt;Customer&amp;gt; customers;&lt;br /&gt;
    &lt;br /&gt;
    public CustomerService(List&amp;lt;Customers&amp;gt; initialCustomers) {&lt;br /&gt;
        this.customers = initialCustomers;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    public void addCustomer(Customer customer) {&lt;br /&gt;
        this.customers.add(customer);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    public void deleteAllCustomers() {&lt;br /&gt;
        this.customers.clear();&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* Mock-Objekt von der Klasse bzw. Schnittstelle, die simuliert werden soll, erzeugen:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot; style=&amp;quot;margin-left:2em&amp;quot;&amp;gt;&lt;br /&gt;
List mockedCustomerList = mock(List.class);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* Mock-Objekt im Unit-Test benutzen:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot; style=&amp;quot;margin-left:2em&amp;quot;&amp;gt;&lt;br /&gt;
CustomerService customerService= new CustomerService(mockedCustomerList);&lt;br /&gt;
Customer customerToAdd = new Customer(&amp;quot;Max Mustermann&amp;quot;);&lt;br /&gt;
customerService.addCustomer(customerToAdd);&lt;br /&gt;
customerService.deleteAllCustomers();&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* Verifizieren, ob das Mock-Objekt von den Methoden &amp;lt;code&amp;gt;CustomerService.addCustomer&amp;lt;/code&amp;gt; und &amp;lt;code&amp;gt;CustomerService.deleteAllCustomers&amp;lt;/code&amp;gt; so benutzt wurde, wie vorgesehen:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot; style=&amp;quot;margin-left:2em&amp;quot;&amp;gt;&lt;br /&gt;
verify(mockedCustomerList).add(customerToAdd);&lt;br /&gt;
verify(mockedCustomerList).clear();&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Testgetriebene Entwicklung]]&lt;br /&gt;
* [[Mocking Framework]]&lt;br /&gt;
* [[Easymock]]&lt;br /&gt;
* [[PowerMock]]&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://mockito.org/ Offizielle Webpräsenz]&lt;br /&gt;
* [https://github.com/mockito/mockito Mockito] bei Github&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Objektorientierte Programmierung]]&lt;br /&gt;
[[Kategorie:Testsoftware]]&lt;br /&gt;
[[Kategorie:Freie Software]]&lt;/div&gt;</summary>
		<author><name>imported&gt;SchlurcherBot</name></author>
	</entry>
</feed>