Tải bản đầy đủ
Appendix F. Smells, Aliases, and Causes

Appendix F. Smells, Aliases, and Causes

Tải bản đầy đủ

762

Smells,
Aliases,
and Causes

Appendix F

Smells, Aliases, and Causes

Name

Page

Relationship Base Name

Eager Test

224

Cause of

Assertion Roulette Chapter 16, Behavior
Smells

Equality
Pollution

221

Cause of

Test Logic in
Production

Chapter 15, Code
Smells

Erratic Test

228

Erratic Test

Chapter 16, Behavior
Smells

Flexible Test

202

Cause of

Conditional Test
Logic

Chapter 15, Code
Smells

For Tests Only

219

Cause of

Test Logic in
Production

Chapter 15, Code
Smells

Fragile Fixture

246

Cause of

Fragile Test

Chapter 16, Behavior
Smells

Fragile Test

239

Fragile Test

Chapter 16, Behavior
Smells

Frequent
Debugging

248

Frequent
Debugging

Chapter 16, Behavior
Smells

General Fixture

190

Obscure Test

Chapter 15, Code
Smells

Hard-to-Test
Code

209

Hard-to-Test
Code

Chapter 15, Code
Smells

Hard-Coded
Dependency

210

Alias

Hard-to-Test
Code

Chapter 15, Code
Smells

Hard-Coded
Test Data

194

Cause of

Obscure Test

Chapter 15, Code
Smells

High Test
Maintenance Cost

265

High Test
Maintenance
Cost

Chapter 17, Project
Smells

Highly Coupled
Code

210

Cause of

Hard-to-Test
Code

Chapter 15, Code
Smells

Indented Test
Code

200

Alias

Conditional Test
Logic

Chapter 15, Code
Smells

Indirect Testing

196

Cause of

Obscure Test

Chapter 15, Code
Smells

Infrequently
Run Tests

268

Cause of

Production Bugs

Chapter 17, Project
Smells

Cause of

Chapter

Smells, Aliases, and Causes

Name

Page

Relationship Base Name

Chapter

Interacting
Test Suites

231

Cause of

Erratic Test

Chapter 16, Behavior
Smells

Interacting Tests

229

Cause of

Erratic Test

Chapter 16, Behavior
Smells

Interface
Sensitivity

241

Cause of

Fragile Test

Chapter 16, Behavior
Smells

Irrelevant
Information

192

Cause of

Obscure Test

Chapter 15, Code
Smells

Lonely Test

232

Cause of

Erratic Test

Chapter 16, Behavior
Smells

Long Test

186

Alias

Obscure Test

Chapter 15, Code
Smells

Lost Test

269

Cause of

Production Bugs

Chapter 17, Project
Smells

Manual
Debugging

248

Alias

Frequent
Debugging

Chapter 16, Behavior
Smells

Manual Event
Injection

281

Cause of

Manual
Intervention

Chapter 16, Behavior
Smells

Manual Fixture
Setup

250

Manual
Intervention

Chapter 16, Behavior
Smells

Manual
Intervention

250

Manual
Intervention

Chapter 16, Behavior
Smells

Manual Result
Verification

251

Cause of

Manual
Intervention

Chapter 16, Behavior
Smells

Missing Assertion
Message

226

Cause of

Assertion
Roulette

Chapter 16, Behavior
Smells

Missing Unit
Test

271

Cause of

Production Bugs

Chapter 17, Project
Smells

Multiple Test
Conditions

207

Cause of

Conditional Test
Logic

Chapter 15, Code
Smells

Mystery Guest

188

Cause of

Obscure Test

Chapter 15, Code
Smells

Neverfail Test

274

Cause of

Production Bugs

Chapter 17, Project
Smells

Nondeterministic
Test

237

Cause of

Erratic Test

Chapter 16, Behavior
Smells

Cause of

Continued...

763

Smells,
Aliases,
and Causes

764

Smells,
Aliases,
and Causes

Appendix F

Smells, Aliases, and Causes

Name

Page

Relationship Base Name

Chapter

Not Enough
Time

263

Cause of

Developers Not
Writing Tests

Chapter 17, Project
Smells

Obscure Test

186

Obscure Test
Smells

Chapter 15, Code

Overcoupled
Test

246

Alias

Fragile Test

Chapter 16, Behavior
Smells

Overspecified
Software

246

Cause of

Fragile Test

Chapter 16, Behavior
Smells

Production
Bugs

268

Production Bugs

Chapter 17, Project
Smells

Production
Logic in Test

204

Cause of

Conditional
Test Logic

Chapter 15, Code
Smells

Reinventing the
Wheel

215

Cause of

Test Code
Duplication

Chapter 15, Code
Smells

Resource
Leakage

233

Cause of

Erratic Test

Chapter 16, Behavior
Smells

Resource
Optimism

233

Cause of

Erratic Test

Chapter 16, Behavior
Smells

Sensitive
Equality

246

Cause of

Fragile Test

Chapter 16, Behavior
Smells

Slow Component
Usage

254

Cause of

Slow Tests

Chapter 16, Behavior
Smells

Slow Tests

253

Slow Tests

Chapter 16, Behavior
Smells

Test Code
Duplication

213

Test Code
Duplication

Chapter 15, Code
Smells

Test Dependency
in Production

220

Test Logic in
Production

Chapter 15, Code
Smells

Test Logic in
Production

217

Test Logic in
Production

Chapter 15, Code
Smells

Test Run War

235

Cause of

Erratic Test

Chapter 16, Behavior
Smells

Too Many Tests

256

Cause of

Slow Tests

Chapter 16, Behavior
Smells

Unrepeatable
Test

234

Cause of

Erratic Test

Chapter 16, Behavior
Smells

Untestable
Test Code

211

Cause of

Hard-to-Test
Code

Chapter 15, Code
Smells

Cause of

Smells, Aliases, and Causes

Name

Page

Relationship Base Name

Chapter

Untested Code

271

Cause of

Production Bugs

Chapter 17, Project
Smells

Untested
Requirement

272

Cause of

Production Bugs

Chapter 17, Project
Smells

Verbose Test

186

Alias

Obscure Test

Chapter 15, Code
Smells

Wrong Test
Automation
Strategy

264

Cause of

Developers Not
Writing Tests

Chapter 17, Project
Smells

765

Smells,
Aliases,
and Causes

This page intentionally left blank

Appendix G

Patterns, Aliases, and
Variations
Name

Page

Relationship Base Name

Chapter

Abstract Setup
Decorator

449

Variation

Setup Decorator

Chapter 20, Fixture
Setup Patterns

Abstract Test
Fixture

638

Alias

Testcase
Superclass

Chapter 24, Test
Organization
Patterns

Abstract
Testcase

638

Alias

Testcase
Superclass

Chapter 24, Test
Organization
Patterns

AllTests Suite

593

Variation

Named Test Suite

Chapter 24, Test
Organization
Patterns

Anonymous
Creation Method

417

Variation

Creation Method

Chapter 20, Fixture
Setup Patterns

ArgumentDescribing
Message

371

Variation

Assertion Message

Chapter 19, xUnit
Basics Patterns

AssertionIdentifying
Message

371

Variation

Assertion Message

Chapter 19, xUnit
Basics Patterns

Assertion
Message

370

Assertion Message

Chapter 19, xUnit
Basics Patterns

Assertion
Method

362

Assertion Method

Chapter 19, xUnit
Basics Patterns

Attachment
Method

418

Creation Method

Chapter 20, Fixture
Setup Patterns

Variation

Continued...

767

Patterns,
Aliases, and
Variations

768

Patterns,
Aliases, and
Variations

Appendix G

Patterns, Aliases, and Variations

Name

Page

Relationship Base Name

Chapter

Automated
Exercise
Teardown

505

Variation

Automated
Teardown

Chapter 22, Fixture
Teardown Patterns

Automated
Fixture Teardown

504

Variation

Automated
Teardown

Chapter 22, Fixture
Teardown Patterns

Automated
Teardown

503

Automated
Teardown

Chapter 22, Fixture
Teardown Patterns

Automated
Unit Test

285

Scripted Test

Chapter 18, Test
Strategy Patterns

Back Door
Manipulation

327

Back Door
Manipulation

Chapter 18, Test
Strategy Patterns

Back Door
Setup

329

Variation

Back Door
Manipulation

Chapter 18, Test
Strategy Patterns

Back Door
Teardown

330

Variation

Back Door
Manipulation

Chapter 18, Test
Strategy Patterns

Back Door
Verification

329

Variation

Back Door
Manipulation

Chapter 18, Test
Strategy Patterns

BehaviorExposing
Subclass

580

Variation

Test-Specific
Subclass

Chapter 23, Test
Double Patterns

BehaviorModifying
Subclass

580

Variation

Test-Specific
Subclass

Chapter 23, Test
Double Patterns

Behavior
Verification

468

Behavior
Verification

Chapter 21, Result
Verification Patterns

Bespoke
Assertion

474

Alias

Custom Assertion

Chapter 21, Result
Verification Patterns

Built-in Test
Recording

281

Variation

Recorded Test

Chapter 18, Test
Strategy Patterns

Calculated
Values

718

Alias

Derived Value

Chapter 27, Value
Patterns

Capture/
Playback Test

278

Alias

Recorded Test

Chapter 18, Test
Strategy Patterns

Chained Tests

454

Chained Tests

Chapter 20, Fixture
Setup Patterns

Cleanup Method

602

Test Utility
Method

Chapter 24, Test
Organization
Patterns

Alias

Variation