Book Image

Django RESTful Web Services

By : Gaston C. Hillar
Book Image

Django RESTful Web Services

By: Gaston C. Hillar

Overview of this book

Django is a Python web framework that makes the web development process very easy. It reduces the amount of trivial code, which simplifies the creation of web applications and results in faster development. It is very powerful and a great choice for creating RESTful web services. If you are a Python developer and want to efficiently create RESTful web services with Django for your apps, then this is the right book for you. The book starts off by showing you how to install and configure the environment, required software, and tools to create RESTful web services with Django and the Django REST framework. We then move on to working with advanced serialization and migrations to interact with SQLite and non-SQL data sources. We will use the features included in the Django REST framework to improve our simple web service. Further, we will create API views to process diverse HTTP requests on objects, go through relationships and hyperlinked API management, and then discover the necessary steps to include security and permissions related to data models and APIs. We will also apply throttling rules and run tests to check that versioning works as expected. Next we will run automated tests to improve code coverage. By the end of the book, you will be able to build RESTful web services with Django.
Table of Contents (16 chapters)
Title Page
www.PacktPub.com
About the Author
Preface

Discovering and running unit tests with pytest


Now, go to the restful01 folder that contains the manage.py file, with the virtual environment activated, and run the following command:

pytest

The pytest command and the Django REST framework will perform the following actions:

  1. Create a clean test database name test_drones.
  2. Run all the migrations required for the database.
  3. Discover the tests that have to be executed based on the settings specified in the pytest.ini file.
  4. Run all the methods whose name starts with the test_ prefix in the DroneCategoryTests class and display the results. We declared this class in the tests.py file and it matches the pattern specified for the python_files setting in the pytest.ini file.
  5. Drop the test database named test_drones.

Note

It is very important to know that the tests won't make changes to the database we have been using when working with our RESTful Web Service. Notice that the test database name is test_drones and the database name that we have been using with...