Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Hands-On Enterprise Application Development with Python

You're reading from   Hands-On Enterprise Application Development with Python Design data-intensive Application with Python 3

Arrow left icon
Product type Paperback
Published in Dec 2018
Publisher Packt
ISBN-13 9781789532364
Length 374 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Saurabh Badhwar Saurabh Badhwar
Author Profile Icon Saurabh Badhwar
Saurabh Badhwar
Arrow right icon
View More author details
Toc

Table of Contents (19) Chapters Close

Preface 1. Using Python for Enterprise 2. Design Patterns – Making a Choice FREE CHAPTER 3. Building for Large-Scale Database Operations 4. Dealing with Concurrency 5. Building for Large-Scale Request Handling 6. Example – Building BugZot 7. Building Optimized Frontends 8. Writing Testable Code 9. Profiling Applications for Performance 10. Securing Your Application 11. Taking the Microservices Approach 12. Testing and Tracing in Microservices 13. Going Serverless 14. Deploying to the Cloud 15. Enterprise Application Integration and its Patterns 16. Microservices and Enterprise Application Integration 17. Assessment 18. Other Books You May Enjoy

Building an application with testing in mind


So, we now know that testing is important and we've also got to know about the different kinds of testing. But are there any important things that we need to do while building our application so that we are able to test it properly?

 

The answer to this question is a bit complicated. Although we can easily write the code in any particular manner we desire, and subject the code to testing through a number of procedures, for example, unit testing, it is still better to follow a general set of guidelines so that the code can be tested easily and efficiently. So, let's go ahead and take a look at the guidelines:

  • Every component should have one responsibility: For testing to be efficient and to cover all the possible code paths, every component should play a single responsibility. For example, take a look at the following code:
    def encrypt_password(password):
      """Encrypt the provided password.

      Keyword arguments:
      Password – The password...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at €18.99/month. Cancel anytime