Wie teste ich Unit Code, der LTS DataContext hat. Ich bekomme Fehler beim Testen, ich habe viele Datenkontexte und manuell hinzufügen der Verbindungszeichenfolge ist ein Schmerz, irgendwelche Vorschläge.Testen von Linqto-SQL-Klassen
Antwort
Nun, die Art, wie ich es tun, ist wie folgt:
My Data Layer eine Schnittstelle hat, wie folgt:
public class MyDataLayer : iMyDataLayer
{
public string GetMyData(parameters)
{
return myQueryValue;
}
}
public interface iMyDataLayer
{
public string GetMyData(parameters);
}
Jetzt, in meinem Konstruktor für meine Haupt-Code-Basis (Business-Logik) ich werde einen Parameter haben in der Schnittstelle für die Datenschicht zu übergeben:
private iMyDataLayer DataLayer;
public class MyBusinessLogic(iMyDataLayer dataLayer)
{
DataLayer = dayaLayer
}
public string GetMyData(parameters)
{
return DataLayer.GetMyData(parameters)
}
Damit kann ich jetzt ein „fake“ Datendienst in meinem TDD-Projekt erstellen:
So jetzt, wenn ich meinen Test laufen lasse, kann ich jetzt mein falsches Datenschichtobjekt meiner Geschäftslogik übergeben, von hier wird es die falsche Logik aufrufen und ein Standardergebnis zurückbekommen.
Jetzt, vorausgesetzt, Sie werden hier nicht mit echten Daten arbeiten. Wenn Sie jedoch gefälschte Objekte mit echten gültigen/ungültigen Daten einrichten, können Sie Ihre Geschäftslogik auf diese Weise testen, ohne eine Verbindung zu einer Datenbank herstellen zu müssen.
Hoffe, das hilft. Lassen Sie es mich wissen, wenn Sie eine Klärung benötigen.
- 1. Testen von WeakReference
- 2. Testen von DeferredResult timeoutResult
- 3. Testen von Drittanbieter-APIs
- 4. Testen von Multithread-Einheiten
- 5. Testen von VSTO-Anwendungen?
- 6. Testen von ClickOnce-Anwendungen
- 7. Automatisches Testen von Segmenten
- 8. Testen von Vue.js Komponente
- 9. Testen von QueryString
- 10. Testen von Ansichtshelfern
- 11. Testen von Befehlszeilen-Dienstprogrammen
- 12. Testen von Grails taglib
- 13. Testen von Webservice-Einheiten
- 14. Testen von Windows-Installern
- 15. Testen von StarTeam-Operationen
- 16. Testen von IPython-Notebooks
- 17. Testen von komplexen Datenszenarien
- 18. Testen von Android-Fragmenten
- 19. Testen von Artifactory-Anmeldeinformationen
- 20. Unit Testen der Datenzugriffsebene - Testen von Update-Methoden?
- 21. Testen von Popups mit NUnit
- 22. Testen von Controllern mit Minitest
- 23. Testen von Links mit rspec?
- 24. Testen von Platzverhältnissen in iPhone
- 25. Testen von GPS in Android
- 26. Testen von Suchkick mit RSpec
- 27. Testen von Dateiuploads in Flask
- 28. Testen von Winkeldienst mit Jasmine
- 29. Testen von SMTP mit .net
- 30. Robolectric (Android): Testen von Ereignissen?
Wo schließe ich meine Datenkontexte im Test an. – Greens
Vielen Dank. – Greens
Sie haben keine Datenkontexte, da Sie den Fake-Dienst verwenden können (in dem normalerweise Ihre Datenkontexte ein statisches Ergebnis zurückgeben). – CodeLikeBeaker