Setting up our test environment
In the previous section, we learned the basics of testing as well as what fixtures are. We will now test the endpoints for CRUD operations as well as user authentication. To test our asynchronous APIs, we’ll be making use of httpx
and installing the pytest-asyncio
library to enable us to test our asynchronous API.
Install the additional libraries:
(venv)$ pip install httpx pytest-asyncio
Next, we’ll create a configuration file called pytest.ini
. Add the following code to it:
[pytest] asyncio_mode = True
The configuration file is read when pytest
is run. This automatically makes pytest
run all tests in asynchronous mode.
With the configuration file in place, let’s create the umbrella test file, conftest.py
, which will be responsible for creating an instance of our application required by the test files. In the tests
folder, create the conftest
file:
(venv)$ touch tests/conftest.py
We’ll start by importing...