Moq
| moq | |
|---|---|
| Basisdaten
| |
| Aktuelle Version | 4.16.0[1] |
| Programmiersprache | .NET Framework |
| Kategorie | Test-Framework |
| Lizenz | BSD-Lizenz |
| https://github.com/moq/moq4#moq | |
moq ist eine freie (BSD-Lizenz) Programmbibliothek zum Erstellen von Mock-Objekten für Unit-Tests in .NET-Programmiersprachen.
Geschichte
moq wurde ursprünglich von Clarius, Manas und InSTEDD entwickelt.[2]
Die Entwickler mit den meisten Commits nennen sich Jeremy Meng, stakx und Daniel Cazzulino.[3]
Verwendung
Das q anstelle von ck im Namen soll auf die Möglichkeit hinweisen, Mock-Objekte mit einer an LINQ orientierten Syntax zu konfigurieren[4]. Alternativ dazu stehen auch Setup-Methoden zur Verfügung. Beide Konfigurationsmöglichkeiten arbeiten mit Lambda-Funktionen.
moq kann sowohl mit Interfaces als auch mit Klassen verwendet werden, z. B. für .NET-Framework-Objekte beim Unit-Testen von ASP.NET-MVC-Anwendungen.[5]
Beispiel
Ein Mock-Object für das fiktive Interface IVersion wird nach Konfiguration eines Methodenaufrufs mit Parameter- und Rückgabewert auf Zustand und Verhalten getestet.
// Setup mock for notional IVersion interface
IVersion version = Mock.Of<IVersion>(x => x.Exists("4.7.142") == true);
// Assert the returned state
Assert.IsTrue(version.Exists("4.7.142"));
// Optionally verify mock interaction
Mock.Get(version).Verify(x => x.Exists("4.7.142"), Times.Exactly(1));
Dieses Beispiel wurde in C# programmiert und mit Visual Studio 2015 überprüft.
Verbreitung
moq wurde seit dem 9. Februar 2011 mehr als 126 Millionen Mal als NuGet-Paket heruntergeladen.[6]
Siehe auch
Weblinks
- moq bei Github
Einzelnachweise
- ↑ github.com.
- ↑
README.md Who?(Englisch), abgerufen am 27. September 2017 - ↑ Github contributors (Englisch), abgerufen am 27. September 2017
- ↑ Daniel Cazzulino's Blog: Linq to Mocks is finally born ( des vom 24. September 2017 im Internet Archive) Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis. (Englisch), abgerufen am 27. September 2017
- ↑ Peter Vogel: Ensure Consistent Testing with Mock Objects and Moq, Visual Studio Magazine (Englisch), abgerufen am 27. September 2017
- ↑ NuGet Packages Gallery (Englisch), abgerufen am 25. August 2020
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.