Test-Driven Development with Python - Harry J. W. Percival

Test-Driven Development with Python

Obey the Testing Goat: Using Django, Selenium, and JavaScript
Buch | Softcover
604 Seiten
2017 | 2. Auflage
O'Reilly Media (Verlag)
978-1-4919-5870-4 (ISBN)
62,80 inkl. MwSt
By taking you through the development of a real web application from beginning to end, the second edition of this hands-on guide demonstrates the practical advantages of test-driven development (TDD) with Python. You’ll learn how to write and run tests before building each part of your app, and then develop the minimum amount of code required to pass those tests. The result? Clean code that works.

In the process, you’ll learn the basics of Django, Selenium, Git, jQuery, and Mock, along with current web development techniques. If you’re ready to take your Python skills to the next level, this book—updated for Python 3.6—clearly demonstrates how TDD encourages simple designs and inspires confidence.
  • Dive into the TDD workflow, including the unit test/code cycle and refactoring
  • Use unit tests for classes and functions, and functional tests for user interactions within the browser
  • Learn when and how to use mock objects, and the pros and cons of isolated vs. integrated tests
  • Test and automate your deployments with a staging server
  • Apply tests to the third-party plugins you integrate into your site
  • Run tests automatically by using a Continuous Integration environment
  • Use TDD to build a REST API with a front-end Ajax interface

After an idyllic childhood spent playing with BASIC on French 8-bit computers like the Thomson T-07 whose keys go "boop" when you press them, Harry J. W. Percival went on to study Economics and Philosophy at Cambridge University. He then spent a few years being deeply unhappy as a management consultant. Soon he rediscovered his true geek nature, and was lucky enough to fall in with a bunch of XP fanatics, working on the pioneering but sadly defunct Resolver One spreadsheet. He now works at PythonAnywhere LLP, and spreads the gospel of TDD world-wide at talks, workshops and conferences, with all the passion and enthusiasm of a recent convert.

Chapter 1 Getting Django Set Up Using a Functional Test
Chapter 2 Extending the Functional Test Using the Unittest Module
Chapter 3 Testing a Simple Home Page with Unit Tests
Chapter 4 What Are We Doing with All These Tests
Chapter 5 Saving User Input: Testing the Database
Chapter 6 Improving Functional Tests: Ensuring Isolation and Removing Voodoo Sleeps
Chapter 7 Working Incrementally
Chapter 8 Prettication: Layout and Styling, and What to Test About It
Chapter 9 Testing Deployment Using a Staging Site
Chapter 10 Getting to a Production-Ready Deployment
Chapter 11 Automating Deployment with Fabric
Chapter 12 Splitting our tests into multiple €les, and a generic wait helper
Chapter 13 Validation at the Database Layer
Chapter 14 A Simple Form
Chapter 15 More Advanced Forms
Chapter 16 Dipping Our Toes, Very Tentatively, into JavaScript
Chapter 17 Deploying Our New Code
Chapter 18 User Authentication, Spiking and De-Spiking-In TDD
Chapter 19 Using Mocks to Test External Dependencies or Reduce Duplication
Chapter 20 Test Fixtures and a Decorator for Explicit Waits
Chapter 21 Server-Side Debugging
Chapter 22 Finishing “My Lists”: Outside-In TDD
Chapter 23 Test Isolation, and “Listening to Your Tests"
Chapter 24 Continuous Integration (CI)
Chapter 25 The Token Social Bit, the Page Pattern, and an Exercise for the Reader
Chapter 26 Fast Tests, Slow Tests, and Hot Lava
Appendix A Python Anywhere
Appendix B Django Class-Based Views
Appendix C Provisioning with Ansible
Appendix D Testing Database Migrations
Appendix E Behavior Driven Development
Appendix F Building a REST API: JSON, Ajax, and Mocking with JavaScript
Appendix G Django-Rest-Framework
Appendix H Cheat Sheet
Appendix I What to Do Next

Erscheinungsdatum
Verlagsort Sebastopol
Sprache englisch
Maße 150 x 250 mm
Gewicht 666 g
Einbandart kartoniert
Themenwelt Informatik Programmiersprachen / -werkzeuge Python
Informatik Software Entwicklung Qualität / Testen
Informatik Web / Internet JavaScript
Schlagworte Django • JavaScript • Python • selenium • TDD - test-driven development • Web Development • Webentwicklung
ISBN-10 1-4919-5870-7 / 1491958707
ISBN-13 978-1-4919-5870-4 / 9781491958704
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
das umfassende Handbuch

von Johannes Ernesti; Peter Kaiser

Buch | Hardcover (2023)
Rheinwerk (Verlag)
44,90