flask - 如何在 pytest 中发送 http 请求”
问题描述
我正在尝试测试 Flask 应用程序。我想向我的端点发送一个 http 请求以检查数据库是否已更改。
我在 Linux ubuntu 19.4 上使用 pytest。
from unittest import TestCase
import requests
class TestUser(TestCase):
def test_create_account(self):
#doesn't matter
当我尝试使用 运行它时pytest
,它会崩溃。
这是我得到的错误:
=========================================== ERRORS ===========================================
_____________________________ ERROR collecting test/test_user.py _____________________________
ImportError while importing test module '/home/rahimi0151/Desktop/cetia_api/cetia_api/test/test_user.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
test/test_user.py:2: in <module>
import requests
E ImportError: No module named requests
!!!!!!!!!!!!!!!!!!!!!!!!!! Interrupted: 1 errors during collection !!!!!!!!!!!!!!!!!!!!!!!!!!!
================================== 1 error in 0.08 seconds ===================================
当我尝试安装请求时,会发生以下情况:
Requirement already satisfied: requests in /usr/local/lib/python3.7/dist-packages (2.22.0)
Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /usr/lib/python3/dist-packages (from requests) (3.0.4)
Requirement already satisfied: idna<2.9,>=2.5 in /usr/lib/python3/dist-packages (from requests) (2.6)
Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /usr/lib/python3/dist-packages (from requests) (1.24.1)
Requirement already satisfied: certifi>=2017.4.17 in /usr/lib/python3/dist-packages (from requests) (2018.8.24)
我什至尝试使用sudo
and --upgrade
(我已经在 StackOverflow 的其他线程上阅读过它们)但它们都不起作用。
我应该怎么办?
解决方案
推荐阅读
- emacs - web-mode:它可以在 JS 中的每一行包装注释上添加注释分隔符吗?
- php - 如何使用 PHP 将事件添加到 Office 365 中的另一个用户日历?
- oracle - 使用可变日期的 PL SQL 'IF 或 CASE'
- ios - 如何访问静态单元格中的 textLabel
- python - 文件随机打开不起作用
- javascript - 无故响应状态更新
- sql - Why is my 'select into a variable' statement making my stored procedure not insert anything into the table?
- windows - 关于执行后不关闭 cmd/powershell 窗口的 powershell vs cmd
- python-2.7 - numpy 中的 nanstd 不包含 nan
- java - 打印数组和索引