Unit tests mit Java: der Test-First-Ansatz
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | German |
Veröffentlicht: |
Heidelberg
dpunkt-Verl.
2003
|
Ausgabe: | 1. Aufl., korr. Nachdr. |
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | 2. Aufl. u.d.T.: Link, Johannes: Softwaretests mit JUnit |
Beschreibung: | XIII, 347 S. Ill., graph. Darst. |
ISBN: | 3898641503 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV017044361 | ||
003 | DE-604 | ||
005 | 20120220 | ||
007 | t | ||
008 | 030408s2003 gw ad|| |||| 00||| ger d | ||
020 | |a 3898641503 |9 3-89864-150-3 | ||
035 | |a (OCoLC)175147983 | ||
035 | |a (DE-599)BVBBV017044361 | ||
040 | |a DE-604 |b ger |e rakwb | ||
041 | 0 | |a ger | |
044 | |a gw |c DE | ||
049 | |a DE-19 |a DE-824 |a DE-20 |a DE-92 |a DE-858 |a DE-188 |a DE-2070s | ||
084 | |a ST 233 |0 (DE-625)143620: |2 rvk | ||
100 | 1 | |a Link, Johannes |e Verfasser |4 aut | |
245 | 1 | 0 | |a Unit tests mit Java |b der Test-First-Ansatz |c Johannes Link. Unter Mitarb. von Peter Fröhlich |
250 | |a 1. Aufl., korr. Nachdr. | ||
264 | 1 | |a Heidelberg |b dpunkt-Verl. |c 2003 | |
300 | |a XIII, 347 S. |b Ill., graph. Darst. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
500 | |a 2. Aufl. u.d.T.: Link, Johannes: Softwaretests mit JUnit | ||
650 | 0 | 7 | |a Automation |0 (DE-588)4003957-2 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Test-First-Ansatz |0 (DE-588)4674451-4 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Softwaretest |0 (DE-588)4132652-0 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Komponententest |0 (DE-588)4674453-8 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Java |g Programmiersprache |0 (DE-588)4401313-9 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Softwaretest |0 (DE-588)4132652-0 |D s |
689 | 0 | 1 | |a Java |g Programmiersprache |0 (DE-588)4401313-9 |D s |
689 | 0 | |5 DE-604 | |
689 | 1 | 0 | |a Komponententest |0 (DE-588)4674453-8 |D s |
689 | 1 | 1 | |a Automation |0 (DE-588)4003957-2 |D s |
689 | 1 | 2 | |a Test-First-Ansatz |0 (DE-588)4674451-4 |D s |
689 | 1 | 3 | |a Java |g Programmiersprache |0 (DE-588)4401313-9 |D s |
689 | 1 | |5 DE-604 | |
856 | 4 | 2 | |m HBZ Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=010286684&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-010286684 |
Datensatz im Suchindex
_version_ | 1804129941923561472 |
---|---|
adam_text | Titel: Unit Tests mit Java
Autor: Link, Johannes
Jahr: 2003
Inhaltsverzeichnis
Teil I Basistechniken 1
1 Einleitung 3
1.1 Kleine Begriffslehre............................................................. 5
1.2 Testen in XP ....................................................................... 6
1.3 Testen Classic ................................................................... 10
1.4 »Test-First« - kleine Definition ........................................ 15
1.5 Nur Java - oder auch anderen Kaffee?.............................. 16
1.6 Was das Buch sein mochte - und was nicht ...................... 17
1.7 Aufbau des Buches............................................................ 17
1.8 Konventionen ................................................................... 18
1.9 Website zum Buch ............................................................ 19
2 Automatisierung von Unit Tests 21
2.1 Was wollen wir automatisieren? .......................................22
2.2 Anforderungen an ein Automatisierungsframework .........23
2.3 JUnit.................................................................................25
2.4 Zusammenfassung............................................................ 35
3 Grundschritte des Test-First-Ansatzes 37
3.1 Step by Step ...................................................................... 37
3.2 Abhangigkeiten.................................................................44
3.3 Testorganisation und Testausfuhrung............................... 52
3.4 Zusammenfassung............................................................ 57
Inhaltsverzeichnis----„-------
4 Testideen und Heuristiken 59
4.1 EJberarbeitung einzelner Tests ..........................................
4.2 Schwarze und weiEe Kisten .............................................. 63
4.3 Testen der typischen Funktionalitiit ................................. 64
4.4 Grenzwerte und Aquivalenzklassen .................................. 65
4.5 Fehlerfalle und Exceptions ............................................... 67
4.6 Objektinteraktionen ......................................................... 73
4.7 Design by Contract .......................................................... 76
4.8 Weitere Ideen zur Testfallfindung .................................... 78
4.9 Refactoring von Code und Tests .............................-........ 79
4.10 Zusammenfassung ........................................................... 81
5 Das Innenleben einesTestframeworks 83
5.1 Die Statik ......................................................................... 83
5.2 Lebenszyklus einer Testsuite ............................................ 85
5.3 Projektspezifische Erweiterungen ..................................... 87
5.4 Zusammenfassung ........................................................... 88
6 Unabhangigkeit durch Dummy- und Mock-Objekte 89
6.1 Kleine Attrappe ................................................................ 89
6.2 Begriffswirrwarr............................................................... 92
6.3 Grofte Attrappe ................................................................ 92
6.4 Wir bauen an ................................................................... 98
6.5 Endoskopisches Testen ..................................................... 99
6.6 Mock-Objekte vom FlieEband ....................................... 103
6.7 Testen von Grenzwerten und Exceptions ....................... 106
6.8 Wie kommt der Test zum Mock? ................................... 109
6.9 Bose Singletons .............................................................. Ill
6.10 Leicht-und schwergewichtige Mocks ............................. 114
6.11 Dateiattrappen ............................................................... 119
6.12 Noch mehr typische Mock-Objekte ............................... 122
6.13 Fremde Komponenten.................................................... 123
6.14 Pro und Contra .............................................................. 126
6.15 Zusammenfassung ......................................................... 129
$
Inhaltsverzeichnis xi |
7 Vererbung und Polymorphismus 131
7.1 Vererbung....................................................................... 131
7.2 Polymorphismus............................................................. 143
7.3 Zusammenfassung.......................................................... 147
8 Wie viel istgenug? 149
8.1 Die XP-Regel .................................................................. 150
8.2 Klare Antworten auf klare Fragen .................................. 151
8.3 Testabdeckung................................................................ 155
8.4 Zusammenfassung.......................................................... 157
Teilll WeiterfiihrendeThemen 159
9 Persistente Objekte 161
9.1 Abstrakte Persistenzschnittstelle ..................................... 163
9.2 Persistente Attrappe........................................................ 166
9.3 Gestaltung einer Datenbankschnittstelle ......................... 168
9.4 Testen der »richtigen« Persistenz .................................... 174
9.5 Interaktion von Persistenzschicht und Client .................. 182
9.6 Zusammenfassung.......................................................... 183
10 Nebenlaufige Programme 185
10.1 Probleme bei der Verwendung von Threads.................... 186
10.2 Testen asynchroner Dienste ............................................ 188
10.3 Testen der Synchronisation............................................. 195
10.4 Zusammenfassung..........................................................203
11 Verteilte Anwendungen 205
11.1 RMI................................................................................207
11.2 Enterprise JavaBeans ...................................................... 214
11.3 Zusammenfassung..........................................................218
Inhaltsverzeichnis
12 Web-Applikationen 221
12.1 Funktionale Tests ........................................................... 222
12.2 Testen auf dem Server .....................................-.............. 226
12.3 Testen mit Attrappen ..................................................... 229
12.4 Trennung von Servlet-API und Servlet-Logik ................. 235
12.5 Testen der HTML-Generierung...................................... 237
12.6 Zusammenfassung ......................................................... 239
13 Grafische Benutzeroberflachen 241
13.1 Der direkte Weg ............................................................. 241
13.2 Kleine Umwege .............................................................. 260
13.3 Zusammenfassung ......................................................... 264
14 Die Rolle von Unit Tests im Softwareprozess 265
14.1 Aktivitaten im definierten Softwareprozess .................... 266
14.2 Prozesstypen und Teststrategien ..................................... 272
14.3 Kosten und Nutzen automatisierter Unit Tests ............... 278
14.4 Kommerziell eingesetzte Prozessmodelle ........................ 280
14.5 Passen automatisierte Unit Tests in meinen Prozess? ...... 287
15 Chancen und offene Enden 289
15.1 Unit Testing bei existierender Software .......................... 290
15.2 Einfuhrung von Unit Tests ins Entwicklungsteam .......... 293
15.3 Was fehlt? ...................................................................... 296
Inhaltsverzeichnis xiii |
Teil III Anhang 299
A Hinweisezu JUnit 301
A.l Frequently Asked Questions (FAQ)..................................301
A.2 JUnit-Erweiterungen.........................................................304
B Unit Tests mit anderen Programmiersprachen 309
B.l Smalltalk..........................................................................309
B.2 C++..................................................................................311
B.3 Der Rest...........................................................................316
C Glossar 317
D Literatur- und Quellenverzeichnis 327
D. 1 Literaturverzeichnis..........................................................327
D.2 URLs................................................................................334
D.3 Weiterfuhrende Lesehinweise............................................337
Stichwortverzeichnis 341
|
any_adam_object | 1 |
author | Link, Johannes |
author_facet | Link, Johannes |
author_role | aut |
author_sort | Link, Johannes |
author_variant | j l jl |
building | Verbundindex |
bvnumber | BV017044361 |
classification_rvk | ST 233 |
ctrlnum | (OCoLC)175147983 (DE-599)BVBBV017044361 |
discipline | Informatik |
edition | 1. Aufl., korr. Nachdr. |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01942nam a2200469 c 4500</leader><controlfield tag="001">BV017044361</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20120220 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">030408s2003 gw ad|| |||| 00||| ger d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">3898641503</subfield><subfield code="9">3-89864-150-3</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)175147983</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV017044361</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakwb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">ger</subfield></datafield><datafield tag="044" ind1=" " ind2=" "><subfield code="a">gw</subfield><subfield code="c">DE</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-19</subfield><subfield code="a">DE-824</subfield><subfield code="a">DE-20</subfield><subfield code="a">DE-92</subfield><subfield code="a">DE-858</subfield><subfield code="a">DE-188</subfield><subfield code="a">DE-2070s</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 233</subfield><subfield code="0">(DE-625)143620:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Link, Johannes</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Unit tests mit Java</subfield><subfield code="b">der Test-First-Ansatz</subfield><subfield code="c">Johannes Link. Unter Mitarb. von Peter Fröhlich</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">1. Aufl., korr. Nachdr.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Heidelberg</subfield><subfield code="b">dpunkt-Verl.</subfield><subfield code="c">2003</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XIII, 347 S.</subfield><subfield code="b">Ill., graph. Darst.</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="500" ind1=" " ind2=" "><subfield code="a">2. Aufl. u.d.T.: Link, Johannes: Softwaretests mit JUnit</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Automation</subfield><subfield code="0">(DE-588)4003957-2</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Test-First-Ansatz</subfield><subfield code="0">(DE-588)4674451-4</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Softwaretest</subfield><subfield code="0">(DE-588)4132652-0</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Komponententest</subfield><subfield code="0">(DE-588)4674453-8</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Java</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4401313-9</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Softwaretest</subfield><subfield code="0">(DE-588)4132652-0</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="1"><subfield code="a">Java</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4401313-9</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="689" ind1="1" ind2="0"><subfield code="a">Komponententest</subfield><subfield code="0">(DE-588)4674453-8</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2="1"><subfield code="a">Automation</subfield><subfield code="0">(DE-588)4003957-2</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2="2"><subfield code="a">Test-First-Ansatz</subfield><subfield code="0">(DE-588)4674451-4</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2="3"><subfield code="a">Java</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4401313-9</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=010286684&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-010286684</subfield></datafield></record></collection> |
id | DE-604.BV017044361 |
illustrated | Illustrated |
indexdate | 2024-07-09T19:13:09Z |
institution | BVB |
isbn | 3898641503 |
language | German |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-010286684 |
oclc_num | 175147983 |
open_access_boolean | |
owner | DE-19 DE-BY-UBM DE-824 DE-20 DE-92 DE-858 DE-188 DE-2070s |
owner_facet | DE-19 DE-BY-UBM DE-824 DE-20 DE-92 DE-858 DE-188 DE-2070s |
physical | XIII, 347 S. Ill., graph. Darst. |
publishDate | 2003 |
publishDateSearch | 2003 |
publishDateSort | 2003 |
publisher | dpunkt-Verl. |
record_format | marc |
spelling | Link, Johannes Verfasser aut Unit tests mit Java der Test-First-Ansatz Johannes Link. Unter Mitarb. von Peter Fröhlich 1. Aufl., korr. Nachdr. Heidelberg dpunkt-Verl. 2003 XIII, 347 S. Ill., graph. Darst. txt rdacontent n rdamedia nc rdacarrier 2. Aufl. u.d.T.: Link, Johannes: Softwaretests mit JUnit Automation (DE-588)4003957-2 gnd rswk-swf Test-First-Ansatz (DE-588)4674451-4 gnd rswk-swf Softwaretest (DE-588)4132652-0 gnd rswk-swf Komponententest (DE-588)4674453-8 gnd rswk-swf Java Programmiersprache (DE-588)4401313-9 gnd rswk-swf Softwaretest (DE-588)4132652-0 s Java Programmiersprache (DE-588)4401313-9 s DE-604 Komponententest (DE-588)4674453-8 s Automation (DE-588)4003957-2 s Test-First-Ansatz (DE-588)4674451-4 s HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=010286684&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Link, Johannes Unit tests mit Java der Test-First-Ansatz Automation (DE-588)4003957-2 gnd Test-First-Ansatz (DE-588)4674451-4 gnd Softwaretest (DE-588)4132652-0 gnd Komponententest (DE-588)4674453-8 gnd Java Programmiersprache (DE-588)4401313-9 gnd |
subject_GND | (DE-588)4003957-2 (DE-588)4674451-4 (DE-588)4132652-0 (DE-588)4674453-8 (DE-588)4401313-9 |
title | Unit tests mit Java der Test-First-Ansatz |
title_auth | Unit tests mit Java der Test-First-Ansatz |
title_exact_search | Unit tests mit Java der Test-First-Ansatz |
title_full | Unit tests mit Java der Test-First-Ansatz Johannes Link. Unter Mitarb. von Peter Fröhlich |
title_fullStr | Unit tests mit Java der Test-First-Ansatz Johannes Link. Unter Mitarb. von Peter Fröhlich |
title_full_unstemmed | Unit tests mit Java der Test-First-Ansatz Johannes Link. Unter Mitarb. von Peter Fröhlich |
title_short | Unit tests mit Java |
title_sort | unit tests mit java der test first ansatz |
title_sub | der Test-First-Ansatz |
topic | Automation (DE-588)4003957-2 gnd Test-First-Ansatz (DE-588)4674451-4 gnd Softwaretest (DE-588)4132652-0 gnd Komponententest (DE-588)4674453-8 gnd Java Programmiersprache (DE-588)4401313-9 gnd |
topic_facet | Automation Test-First-Ansatz Softwaretest Komponententest Java Programmiersprache |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=010286684&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT linkjohannes unittestsmitjavadertestfirstansatz |