加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 使用Flask测试异常返回代码

发布时间:2020-12-20 13:08:54 所属栏目:Python 来源:网络整理
导读:我有以下代码块 class APITests(unittest.TestCase): def setUp(self): app.config['TESTING'] = True self.app = app.test_client() app.config['SECRET_KEY'] = 'kjhk' def test_exn(self,query): query.all.side_effect = ValueError('test') rv = self.a
我有以下代码块

class APITests(unittest.TestCase):

    def setUp(self):
        app.config['TESTING'] = True
        self.app = app.test_client()
        app.config['SECRET_KEY'] = 'kjhk'

    def test_exn(self,query):
        query.all.side_effect = ValueError('test')
        rv = self.app.get('/exn/')
        assert rv.status_code == 400

我想检查self.app.get(‘/ exn /)的返回码.但是,我注意到query.all()将异常传播到测试用例,而不是捕获它并返回错误代码.

在Flask中抛出异常时,如何检查无效输入的返回码?

解决方法

你可以断言来自werkzeug的异常.

例:

from werkzeug import exceptions
def test_bad_request(self):
    with self.app as c:
        rv = c.get('/exn/',follow_redirects=True)
        self.assertRaises(exceptions.BadRequest)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读