WrapperTestResponse' 对象没有属性 'text'

WrapperTestResponse' object has no attribute 'text'

  1. 目前我正在为我的烧瓶项目编写一个联合测试。我写了一个函数来测试登录功能。当我 运行 单元测试时,它显示了一些错误信息。

失败 unit_test.py::TestClass::test_login - AttributeError: 'WrapperTestResponse' 对象没有属性 'text'

2.Here是我的单元测试实现的代码,我可以成功获取状态码但不能获取文本。我是不是犯了什么错误?

import unittest
from app import app
import requests
from flask import request
import json



class TestClass(unittest.TestCase):
    def setup_class(self):
        app.config['TESTING'] = True  
        self.app = app.test_client()

    def teardown_class(self):
        """Do the testing """
        pass

    def test_login(self):
        response = self.app.get('/login')
        print(response)
        data = {'username': '123456@qq.com', 'password': '12345678'}
        response = app.test_client().post('/login', data=json.dumps(data))
        self.assertEqual(response.status_code, 200)
        print('--------------')
        self.assertEqual(response.text, "Invalid login credentials")

我认为您正在寻找 response.data 而不是

A descriptor that calls get_data() and set_data().

get_data 给出

The string representation of the response body...

示例输出如果你的视图函数 returns 'Invalid login credentials':

>>> response.data
b'Invalid login credentials'