Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
cocoaheads:testing [2010/03/17 15:12] – mro | cocoaheads:testing [2017/07/20 23:40] (aktuell) – [Unit Testing Cocoa] mro | ||
---|---|---|---|
Zeile 9: | Zeile 9: | ||
* Firefox recht gut per Plugin: https:// | * Firefox recht gut per Plugin: https:// | ||
* Opera von Haus aus | * Opera von Haus aus | ||
+ | |||
+ | |||
= Unit Testing Cocoa | = Unit Testing Cocoa | ||
- | //The main thing that distinguishes legacy code from non-legacy code is tests, or rather a lack of tests. [[http:// | + | Vortrag am 17. März 2010 |
+ | |||
+ | //The main thing that distinguishes legacy code from non-legacy code is tests, or rather a lack of tests. [[https:// | ||
----- | ----- | ||
Zeile 32: | Zeile 36: | ||
* normalerweise in der gleichen Sprache geschrieben wie der zu testende Code, | * normalerweise in der gleichen Sprache geschrieben wie der zu testende Code, | ||
* nicht Teil des ausgelieferten Programms. | * nicht Teil des ausgelieferten Programms. | ||
+ | |||
== Quelltext Impression | == Quelltext Impression | ||
+ | |||
<code objc> | <code objc> | ||
#import < | #import < | ||
Zeile 59: | Zeile 65: | ||
* eindeutig definiertes Verhalten ([[http:// | * eindeutig definiertes Verhalten ([[http:// | ||
* keine " | * keine " | ||
+ | |||
== Wie geht's prinzipiell? | == Wie geht's prinzipiell? | ||
+ | |||
* Test Framework zur bequemen Entwicklung, | * Test Framework zur bequemen Entwicklung, | ||
* normalerweise pro Logikbaustein (Klasse) eine Testklasse, | * normalerweise pro Logikbaustein (Klasse) eine Testklasse, | ||
Zeile 71: | Zeile 79: | ||
} | } | ||
</ | </ | ||
+ | |||
== Wie geht's mit Cocoa | == Wie geht's mit Cocoa | ||
+ | |||
{{ : | {{ : | ||
Zeile 79: | Zeile 89: | ||
{{ : | {{ : | ||
* ...und jetzt der schwierige Teil: | * ...und jetzt der schwierige Teil: | ||
+ | |||
== Step & Trace | == Step & Trace | ||
Zeile 84: | Zeile 95: | ||
dazu brauchen wir ein " | dazu brauchen wir ein " | ||
* Pfad '' | * Pfad '' | ||
- | * einige [[http:// | + | * einige [[http:// |
das können wir dann als '' | das können wir dann als '' | ||
* Parameter und Umgebungsvariablen gehen in die '' | * Parameter und Umgebungsvariablen gehen in die '' | ||
Zeile 93: | Zeile 104: | ||
== NSLog | == NSLog | ||
+ | |||
* Terminal: '' | * Terminal: '' | ||
* XCode: '' | * XCode: '' | ||
+ | {{ : | ||
+ | |||
== Exkurs: Entwicklungsprozesse | == Exkurs: Entwicklungsprozesse | ||
+ | |||
* [[http:// | * [[http:// | ||
* [[http:// | * [[http:// | ||
Zeile 105: | Zeile 120: | ||
== Was ich vermisse | == Was ich vermisse | ||
+ | |||
* einfachere Projekteinrichtung, | * einfachere Projekteinrichtung, | ||
* benutzerbezogene Einstellungen abschaffen, | * benutzerbezogene Einstellungen abschaffen, | ||
Zeile 111: | Zeile 127: | ||
== Locker bleiben | == Locker bleiben | ||
- | //Don’t stress about unit tests. They are intended as a tool for ensuring good test coverage and memory management. Use them in that way to aid your development process. [[http:// | ||
+ | //Don’t stress about unit tests. They are intended as a tool for ensuring good test coverage and memory management. Use them in that way to aid your development process. [[https:// | ||
* Unit Tests verhindern natürlich [[http:// | * Unit Tests verhindern natürlich [[http:// | ||
Zeile 118: | Zeile 134: | ||
* ein laufendes Programm ist wichtiger als 100% Testabdeckung, | * ein laufendes Programm ist wichtiger als 100% Testabdeckung, | ||
* die ersten Tests für Spaghetti Code können allerdings frustrieren. | * die ersten Tests für Spaghetti Code können allerdings frustrieren. | ||
+ | |||
== Querverweise / Lesetips | == Querverweise / Lesetips | ||
Zeile 126: | Zeile 143: | ||
* [[http:// | * [[http:// | ||
* [[http:// | * [[http:// | ||
- | * [[http:// | + | * [[http:// |
== Vielen Dank | == Vielen Dank | ||
Zeile 145: | Zeile 163: | ||
ein Vortrag bei den [[http:// | ein Vortrag bei den [[http:// | ||
- | + | {{tag> | |
- | {{tag> CocoaHeads Unit Test Cocoa XCode}} | + |