Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

TDD mit MSTest Stefan Lieser Web:

Ähnliche Präsentationen


Präsentation zum Thema: "TDD mit MSTest Stefan Lieser Web:"—  Präsentation transkript:

1 TDD mit MSTest Stefan Lieser Email: stefan@lieser-online.destefan@lieser-online.de Web: http://www.lieser-online.dehttp://www.lieser-online.de

2 Agenda  Begriffsklärung  Unit Test, Integration Test, etc.  Überblick MSTest  Red, Green, Refactor  Vorgehensweise bei TDD  Mock Frameworks  Rhino.Mocks  TypeMock  Sollen Tests das Design beeinflussen?

3 Begriffsklärung  Unit Test  automatisiert  Testet die kleinste Einheit, in der Regel eine Klasse  Isolieren der „class under test“ von ihren Abhängigkeiten

4 Überblick MSTest using Microsoft.VisualStudio.TestTools.UnitTesting; namespace MeineTests { [TestClass] public class BasicTests { [TestMethod] public void Test() { int i = 5; Assert.AreEqual(5, i); } Klasse enthält Tests Diese Methode ist ein Test Annahme die erfüllt sein muss

5 Test Setup [TestClass] public class BasicTests { private IList list; [TestInitialize] public void Setup() { list = new List (); } [TestMethod] public void Test() { list.Add("bla"); Assert.AreEqual(1, list.Count); } Initialisierung die vor jeder Testmethode ausgeführt wird.

6 Red, Green, Refactor  Red  Schreibe einen Test.  Implementiere gerade soviel dass es syntaktisch korrekt ist.  Green  Ergänze die Implementierung gerade so weit, dass der Test erfolgreich ist.  Refactor  Überarbeite die Implementierung so dass sie „besser“ wird, ohne ihr Verhalten zu modifizieren.

7 Test first?  Sapir-Whorf These  Die Sprache formt das Denken.  Spezifikation (statt Test) trifft die Sache eher.  Test first führt dazu dass man eine neue Funktionalität erst anwendet ehe man sie implementiert. Dadurch wird die API in der Regel besser.

8 Test first?  Die Testabdeckung (Coverage) ist in der Regel höher als bei Tests die im Nachhinein ergänzt werden.  Kein Dogma! Manchmal geht es nur im Nachhinein.  Manchmal hilfreich:  erst einen Spike ohne Tests,  diesen dann wegwerfen und Test first neu beginnen.

9 Links  Sapir-Whorf These: http://de.wikipedia.org/wiki/Sapir-Whorf-Hypothese http://de.wikipedia.org/wiki/Sapir-Whorf-Hypothese


Herunterladen ppt "TDD mit MSTest Stefan Lieser Web:"

Ähnliche Präsentationen


Google-Anzeigen