1 option
Test-driven development with Python : obey the testing goat : using Django, Selenium, and JavaScript / Harry J.W. Percival.
- Format:
- Book
- Author/Creator:
- Percival, Harry, author.
- Language:
- English
- Subjects (All):
- Python (Computer program language).
- Physical Description:
- 1 online resource (614 pages) : illustrations
- Edition:
- Second edition.
- Place of Publication:
- Beijing, [China] : O'Reilly, 2017.
- System Details:
- text file
- Summary:
- 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
- Contents:
- Getting Django set up using a functional test
- Extending our functional test using the unittest module
- Testing a simple home page with unit tests
- What are we doing with all these tests? (And, refactoring)
- Saving user input : testing the database
- Improving functional tests : ensuring isolation and removing Voodoo sleeps
- Working incrementally
- Prettification : layout and styling, and what to test about it
- Testing deployment using a staging site
- Getting to a production-ready deployment
- Automating deployment with fabric
- Splitting our tests into multiple files, and a generic wait helper
- Validation at the database layer
- A simple form
- More advanced forms
- Dipping our toes, very tentatively, into JavaScript
- Deploying our new code
- User authentication, spiking, and de-spiking
- Using mocks to test external dependencies or reduce duplication
- Test fixtures and a decorator for explicit waits
- Server-side debugging
- Finishing "my lists" : outside-in TDD
- Test isolation, and "listening to your tests"
- Continuous integration (CI)
- The token social bit, the page pattern, and an exercise for the reader
- Fast tests, slow tests, and hot lava
- Obey the testing goat!
- Appendix A: PythonAnywhere
- Appendix B: Django class-based views
- Appendix C: Provisioning with ansible
- Appendix D: Testing database migrations
- Appendix E: Behaviour-driven development (BDD)
- 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 ndext
- Appendix J : Source code examples.
- Notes:
- Previous edition published: 2014.
- Includes bibliographical references and index.
- Description based on online resource; title from PDF title page (ebrary, viewed August 28, 2017).
- ISBN:
- 9781491958650
- 1491958650
- 9781491958698
- 1491958693
- OCLC:
- 1001253511
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.