Harajuku Lovers

Professional Test Driven Development with C#: Developing Real World Applications

Description: Professional Test Driven Development with C# by James Bender, Jeff McWherter Hands-on guidance to creating great test-driven development practice Test-driven development (TDD) practice helps developers recognize a well-designed application, and encourages writing a test before writing the functionality that needs to be implemented. FORMAT Paperback LANGUAGE English CONDITION Brand New Publisher Description Hands-on guidance to creating great test-driven development practice Test-driven development (TDD) practice helps developers recognize a well-designed application, and encourages writing a test before writing the functionality that needs to be implemented. This hands-on guide provides invaluable insight for creating successful test-driven development processes. With source code and examples featured in both C# and .NET, the book walks you through the TDD methodology and shows how it is applied to a real-world application. Youll witness the application built from scratch and details each step that is involved in the development, as well as any problems that were encountered and the solutions that were applied. Clarifies the motivation behind test-driven development (TDD), what it is, and how it worksReviews the various steps involved in developing an application and the testing that is involved prior to implementing the functionalityDiscusses unit testing and refactoring Professional Test-Driven Development with C# shows you how to create great TDD processes right away. Notes Subtitled, Developing Real World Applications With TDD. Back Cover Start working with test driven development processes to build better applications If you want to write robust software that is simple to implement and maintain, you need to use Test Driven Development (TDD). This hands-on guide shows you how, providing invaluable insight for creating effective TDD processes. With the help of source code and examples featured in C#, the authors walk you through the TDD methodology and show you how to apply it to a real-world application. Youll explore the application as its built from scratch and follow each step involved in development, including problems that arise and the solutions to apply. Within no time, youll be designing your own successful TDD processes. Professional Test Driven Development with C# : Describes common software problems and provides refactoring practices that resolve them Shows patterns that can be used to test WPF and Silverlight applications Helps you ensure that when a defect is fixed it stays fixed without causing unexpected side effects Shows how to structure your MVC application for testability Shares the easy steps that can be taken to test WCF services Explains how to run integration tests to ensure that everything works as planned Uncovers best practices for writing good tests that are readable and maintainable Wrox Professional guides are planned and written by working programmers to meet the real-world needs of programmers, developers, and IT professionals. Focused and relevant, they address the issues technology professionals face every day. They provide examples, practical solutions, and expert education in new technologies, all designed to help programmers do a better job. wrox.com Programmer Forums Join our Programmer to Programmer forums to ask and answer programming questions about this book, join discussions on the hottest topics in the industry, and connect with fellow programmers from around the world. Code Downloads Take advantage of free code samples from this book, as well as code samples from hundreds of other books, all ready to use. Read More Find articles, ebooks, sample chapters, and tables of contents for hundreds of books, and more reference resources on programming topics that matter to you. Flap Start working with test driven development processes to build better applications If you want to write robust software that is simple to implement and maintain, you need to use Test Driven Development (TDD). This hands-on guide shows you how, providing invaluable insight for creating effective TDD processes. With the help of source code and examples featured in C#, the authors walk you through the TDD methodology and show you how to apply it to a real-world application. Youll explore the application as its built from scratch and follow each step involved in development, including problems that arise and the solutions to apply. Within no time, youll be designing your own successful TDD processes. Professional Test Driven Development with C# : Describes common software problems and provides refactoring practices that resolve them Shows patterns that can be used to test WPF and Silverlight applications Helps you ensure that when a defect is fixed it stays fixed without causing unexpected side effects Shows how to structure your MVC application for testability Shares the easy steps that can be taken to test WCF services Explains how to run integration tests to ensure that everything works as planned Uncovers best practices for writing good tests that are readable and maintainable Wrox Professional guides are planned and written by working programmers to meet the real-world needs of programmers, developers, and IT professionals. Focused and relevant, they address the issues technology professionals face every day. They provide examples, practical solutions, and expert education in new technologies, all designed to help programmers do a better job. wrox.com Programmer Forums Join our Programmer to Programmer forums to ask and answer programming questions about this book, join discussions on the hottest topics in the industry, and connect with fellow programmers from around the world. Code Downloads Take advantage of free code samples from this book, as well as code samples from hundreds of other books, all ready to use. Read More Find articles, ebooks, sample chapters, and tables of contents for hundreds of books, and more reference resources on programming topics that matter to you. Author Biography James Bender is Vice President of Technology for Improving Enterprises. He is a Microsoft MVP, working on everything from small, single-user applications to Enterprise-scale, multi-user systems. Jeff McWherter is a Partner and Director of Development at Gravity Works Design and Development. In 2010 Jeff was awarded with the Microsoft MVP for the third consecutive year. Table of Contents INTRODUCTION xxv PART I: GETTING STARTED CHAPTER 1: THE ROAD TO TEST-DRIVEN DEVELOPMENT 3 The Classical Approach to Software Development 4 A Brief History of Software Engineering 4 From Waterfall to Iterative and Incremental 5 A Quick Introduction to Agile Methodologies 6 A Brief History of Agile Methodologies 6 The Principles and Practices of Test-Driven Development 7 The Concepts Behind TDD 8 TDD as a Design Methodology 8 TDD as a Development Practice 8 The Benefi ts of TDD 9 A Quick Example of the TDD Approach 10 Summary 17 CHAPTER 2: AN INTRODUCTION TO UNIT TESTING 19 What Is a Unit Test? 19 Unit Test Definition 20 What Is Not a Unit Test? 20 Other Types of Tests 22 A Brief Look at NUnit 24 What Is a Unit Test Framework? 24 The Basics of NUnit 25 Decoupling with Mock Objects 28 Why Mocking Is Important 28 Dummy, Fake, Stub, and Mock 29 Best and Worst Practices 35 A Brief Look at Moq 36 What Does a Mocking Framework Do? 36 A Bit About Moq 36 Moq Basics 36 Summary 40 CHAPTER 3: A QUICK REVIEW OF REFACTORING 41 Why Refactor? 42 A Projects Lifecycle 42 Maintainability 43 Code Metrics 43 Clean Code Principles 45 OOP Principles 45 Encapsulation 45 Inheritance 46 Polymorphism 48 The SOLID Principles 49 The Single Responsibility Principle 50 The Open/Close Principle 50 The Liskov Substitution Principle 51 The Interface Segregation Principle 51 The Dependency Inversion Principle 52 Code Smells 52 What Is a Code Smell? 52 Duplicate Code and Similar Classes 53 Big Classes and Big Methods 54 Comments 55 Bad Names 56 Feature Envy 57 Too Much If/Switch 58 Try/Catch Bloat 59 Typical Refactoring 60 Extract Classes or Interfaces 60 Extract Methods 62 Rename Variables, Fields, Methods, and Classes 66 Encapsulate Fields 67 Replace Conditional with Polymorphism 68 Allow Type Inference 71 Summary 71 CHAPTER 4: TEST-DRIVEN DEVELOPMENT: LET THE TESTS BE YOUR GUIDE 73 It Starts with the Test 74 Red, Green, Refactor 76 The Three Phases of TDD 77 The Red Phase 77 The Green Phase 78 The Refactoring Phase 79 Starting Again 79 A Refactoring Example 79 The First Feature 80 Making the First Test Pass 83 The Second Feature 83 Refactoring the Unit Tests 85 The Third Feature 87 Refactoring the Business Code 88 Correcting Refactoring Defects 91 The Fourth Feature 93 Summary 94 CHAPTER 5: MOCKING EXTERNAL RESOURCES 97 The Dependency Injection Pattern 98 Working with a Dependency Injection Framework 99 Abstracting the Data Access Layer 108 Moving the Database Concerns Out of the Business Code 108 Isolating Data with the Repository Pattern 108 Injecting the Repository 109 Mocking the Repository 112 Summary 113 PART II: PUTTING BASICS INTO ACTION CHAPTER 6: STARTING THE SAMPLE APPLICATION 117 Defi ning the Project 118 Developing the Project Overview 118 Defi ning the Target Environment 119 Choosing the Application Technology 120 Defi ning the User Stories 120 Collecting the Stories 120 Defi ning the Product Backlog 122 The Agile Development Process 123 Estimating 124 Working in Iterations 124 Communication Within Your Team 126 Iteration Zero: Your First Iteration 127 Testing in Iteration Zero 127 Ending an Iteration 128 Creating the Project 129 Choosing the Frameworks 129 Defi ning the Project Structure 131 Organizing Project Folders 131 Creating the Visual Studio Solution 132 Summary 134 CHAPTER 7: IMPLEMENTING THE FIRST USER STORY 137 The First Test 138 Choosing the First Test 138 Naming the Test 139 Writing the Test 140 Implementing the Functionality 148 Writing the Simplest Thing That Could Possibly Work 148 Running the Passing Test 157 Writing the Next Test 158 Improving the Code by Refactoring 165 Triangulation of Tests 166 Summary 166 CHAPTER 8: INTEGRATION TESTING 169 Integrate Early; Integrate Often 170 Writing Integration Tests 171 How to Manage the Database 171 How to Write Integration Tests 172 Reviewing the ItemTypeRepository 173 Adding Ninject for Dependency Injection 174 Creating the Fluent NHibernate Confi guration 177 Creating the Fluent NHibernate Mapping 179 Creating the Integration Test 183 End-to-End Integration Tests 191 Keeping Various Types of Tests Apart 191 When and How to Run Integration Tests 191 Summary 192 PART III: TDD SCENARIOS CHAPTER 9: TDD ON THE WEB 197 ASP.NET Web Forms 197 Web Form Organization 198 ASPX Files 198 Code-Behind Files 198 Implementing Test-Driven Development with MVP and Web Forms 199 Working with the ASP.NET MVC 210 MVC 101 211 Microsoft ASP.NET MVC 3.0 212 Creating an ASP.NET MVC Project 212 Creating Your First Test 213 Making Your First Test Pass 215 Creating Your First View 216 Gluing Everything Together 217 Using the MVC Contrib Project 220 ASP.NET MVC Summarized 220 Working with JavaScript 220 JavaScript Testing Frameworks 221 Summary 226 CHAPTER 10: TESTING WINDOWS COMMUNICATION FOUNDATION SERVICES 227 WCF Services in Your Application 228 Services Are Code Too 228 Testing WCF Services 228 Refactoring for Testability 229 Introducing Dependency Injection to Your Service 231 Writing the Test 236 Stubbing the Dependencies 239 Verifying the Results 243 Trouble Spots to Watch 244 Summary 244 CHAPTER 11: TESTING WPF AND SILVERLIGHT APPLICATIONS 245 The Problem with Testing the User Interface 246 The MVVM Pattern 246 How MVVM Makes WPF/Silverlight Applications Testable 248 Bringing It All Together 261 Summary 263 PART IV: REQUIREMENTS AND TOOLS CHAPTER 12: DEALING WITH DEFECTS AND NEW REQUIREMENTS 267 Handling Change 268 Change Happens 268 Adding New Features 268 Addressing Defects 269 Starting with a Test 270 Changing the Code 272 Keeping the Tests Passing 276 Summary 276 CHAPTER 13: THE GREAT TOOL DEBATE 279 Test Runners 279 TestDriven.NET 280 Developer Express Test Runner 280 Gallio 281 Unit Testing Frameworks 282 MSTest 282 MbUnit 283 xUnit 284 Mocking Frameworks 285 Rhino Mocks 285 Type Mock 287 Dependency Injection Frameworks 289 Structure Map 289 Unity 291 Windsor 293 Autofac 294 Miscellaneous Useful Tools 295 nCover 295 PEX 295 How to Introduce TDD to Your Team 296 Working in Environments That Are Resistant to Change 297 Working in Environments That Are Accepting of Change 297 Summary 297 CHAPTER 14: CONCLUSIONS 299 What You Have Learned 299 You Are the Client of Your Code 300 Find the Solutions Step by Step 300 Use the Debugger as a Surgical Instrument 300 TDD Best Practices 301 Use Signifi cant Names 301 Write at Least One Test for One Unit of Functionality 301 Keep Your Mocks Simple 302 The Benefi ts of TDD 302 How to Introduce TDD in Your Team 303 Summary 304 APPENDIX: TDD KATAS 307 Working with TDD Katas 307 Share Your Work 308 OSIM User Stories 308 INDEX 311 Long Description Start working with test driven development processes to build better applications If you want to write robust software that is simple to implement and maintain, you need to use Test Driven Development (TDD). This hands-on guide shows you how, providing invaluable insight for creating effective TDD processes. With the help of source code and examples featured in C#, the authors walk you through the TDD methodology and show you how to apply it to a real-world application. Youll explore the application as its built from scratch and follow each step involved in development, including problems that arise and the solutions to apply. Within no time, youll be designing your own successful TDD processes. Professional Test Driven Development with C# : Describes common software problems and provides refactoring practices that resolve them Shows patterns that can be used to test WPF and Silverlight applications Helps you ensure that when a defect is fixed it stays fixed without causing unexpected side effects Shows how to structure your MVC application for testability Shares the easy steps that can be taken to test WCF services Explains how to run integration tests to ensure that everything works as planned Uncovers best practices for writing good tests that are readable and maintainable Wrox Professional guides are planned and written by working programmers to meet the real-world needs of programmers, developers, and IT professionals. Focused and relevant, they address the issues technology professionals face every day. They provide examples, practical solutions, and expert education in new technologies, all designed to help programmers do a better job. wrox.com Programmer Forums Join our Programmer to Programmer forums to ask and answer programming questions about this book, join discussions on the hottest topics in the industry, and connect with fellow programmers from around the world. Code Downloads Take advantage of free code samples from this book, as well as code samples from hundreds of other books, all ready to use. Read More Find articles, ebooks, sample chapters, and tables of contents for hundreds of books, and more reference resources on programming topics that matter to you. Details ISBN047064320X Year 2011 ISBN-10 047064320X ISBN-13 9780470643204 Format Paperback Media Book Short Title PROFESSIONAL TEST DRIVEN DEVEL Language English Subtitle Developing Real World Applications with TDD DEWEY 005.14 Series Wrox Professional Guides Illustrations Yes Country of Publication United States Publisher John Wiley & Sons Inc Edition 1st Place of Publication New York Publication Date 2011-05-06 UK Release Date 2011-05-06 Illustrator Gwyneth Williamson Affiliation Winchester College, UK Position Classics Teacher AU Release Date 2011-04-22 NZ Release Date 2011-04-22 Author Jeff McWherter Pages 368 Imprint Wrox Press Audience General US Release Date 2011-05-06 We've got this At The Nile, if you're looking for it, we've got it. With fast shipping, low prices, friendly service and well over a million items - you're bound to find what you want, at a price you'll love! TheNile_Item_ID:136303753;

Price: 74.94 AUD

Location: Melbourne

End Time: 2024-12-23T03:51:26.000Z

Shipping Cost: 4.42 AUD

Product Images

Professional Test Driven Development with C#: Developing Real World Applications

Item Specifics

Restocking fee: No

Return shipping will be paid by: Buyer

Returns Accepted: Returns Accepted

Item must be returned within: 30 Days

ISBN-13: 9780470643204

Book Title: Professional Test Driven Development with C#

Number of Pages: 360 Pages

Language: English

Publication Name: Professional Test Driven Development with C#: Developing Real World Applications with Tdd

Publisher: John Wiley & Sons Inc

Publication Year: 2011

Subject: Computer Science

Item Height: 233 mm

Item Weight: 668 g

Type: Textbook

Author: James Bender, Jeff Mcwherter

Item Width: 191 mm

Format: Paperback

Recommended

CBS Labs STR 100 Technical Series Professional Test Record & Catalog Play Tested
CBS Labs STR 100 Technical Series Professional Test Record & Catalog Play Tested

$15.00

View Details
Fluke Networks TS52 PRO Telephone Test Kit Lineman Service Phone
Fluke Networks TS52 PRO Telephone Test Kit Lineman Service Phone

$60.00

View Details
Autel MaxiCOM MK808S MX808S PRO Car Full System Diagnostic Scanner Bidirectional
Autel MaxiCOM MK808S MX808S PRO Car Full System Diagnostic Scanner Bidirectional

$380.00

View Details
LaMotte Insta-TEST PRO 600 Plus Test Strips, 100-Count LES-3028-J-6
LaMotte Insta-TEST PRO 600 Plus Test Strips, 100-Count LES-3028-J-6

$21.75

View Details
High Accuracy Professional Diamond Tester Pen Gem Selector Jeweler Tool Battery
High Accuracy Professional Diamond Tester Pen Gem Selector Jeweler Tool Battery

$11.96

View Details
Pro-Lab Total Water Analysis Test Kits Safe And Easy to Use Instant Results
Pro-Lab Total Water Analysis Test Kits Safe And Easy to Use Instant Results

$27.99

View Details
Cracking the CSET (Professional Test Preparation) - Paperback - GOOD
Cracking the CSET (Professional Test Preparation) - Paperback - GOOD

$8.24

View Details
Wondfo Finecare Canine Progesterone Test-cProg (Serum) -Free USPS Priority!!!
Wondfo Finecare Canine Progesterone Test-cProg (Serum) -Free USPS Priority!!!

$90.00

View Details
Ftce Professional Education Practice Test 1
Ftce Professional Education Practice Test 1

$14.27

View Details
Sencore Video Pro VP401 Video Test Equipment w/Cables & Carry Case
Sencore Video Pro VP401 Video Test Equipment w/Cables & Carry Case

$95.00

View Details