Moq ist ein leichtgewichtiges Mocking-Framework für .NET, das das Erstellen und Verwalten von Mock-Objekten in Unit-Tests vereinfacht. Es nutzt Ausdrücke zur Einrichtung von Erwartungen, erlaubt Verhaltens- und Verifikationsprüfungen und fördert isolierte, deterministische Tests durch Kontrolle externer Abhängigkeiten und einfache Integration in Test-Runner.
Nutze diesen Steckbrief, um den Baustein kurz zu verstehen, ihn im Modell einzuordnen und verwandte Bausteine zu öffnen.
Technischer Baustein: kann automatisiert, integriert oder betrieben werden.
Konkretes Rädchen im System, das in größeren Zusammenhängen wirkt.
Moq ist eine .NET-Bibliothek, mit der Tests Abhängigkeiten durch konfigurierbare Mock-Objekte ersetzen können.
Moq entstand als Open-Source-Projekt im .NET-Ökosystem aus der Praxis, Abhängigkeiten in Unit-Tests durch Testdoubles zu isolieren. Daraus entwickelte sich eine Bibliothek, die Interfaces und Klassen dynamisch simuliert und über NuGet in .NET-Projekten eingesetzt wird.
Ein Test erzeugt einen Mock für ein Interface oder eine Klasse. Er legt fest, welche Aufrufe erlaubt sind und welche Werte zurückkommen. Nach dem Act-Schritt prüft er Zustand oder Verifikation der Interaktionen; damit testet er die Einheit isoliert, aber auch seine Annahmen über Zusammenarbeit.
Ein Mock simuliert eine Abhängigkeit und kann erwartete Interaktionen aufzeichnen.
Setups definieren Rückgaben oder Ausnahmen für bestimmte Aufrufe.
Verifikation prüft, ob erwartete Interaktionen tatsächlich stattgefunden haben.
Moq hilft bei Unit-Tests, wenn externe Abhängigkeiten isoliert werden sollen. Übermäßige Verifikation koppelt Tests an Implementierungsdetails; Integrations- und Vertragstests bleiben nötig, um echtes Zusammenspiel zu prüfen.
Wo dieser Baustein im Themenmodell verortet ist.
Keine Strukturpfade verfügbar.
Erkunde, wie dieser Wissensbaustein mit Konzepten, Methoden, Technologien und Tools verbunden ist.
Diese Quellen belegen den Begriff und seine fachliche Bedeutung.
Alle direkten Verbindungen des aktuellen Wissensbausteins in einer kompakten, textuellen Darstellung.
Diese Einordnung zeigt, in welchem Kontext der Baustein typischerweise relevant wird, wie anspruchsvoll er ist und welche Wirkung er im Modell hat.
Die Ebene innerhalb der Organisation (Unternehmen, Domäne, Team), auf der der AssetBlock angewendet wird.