Flask 第一个测试

是进行第一个应用功能的测试的时候了。让我们检查当我们访问
根路径(/)时应用程序是否正确地返回了了“No entries here so far”
字样。为此,我们添加了一个新的测试函数到我们的类当中,
如下面的代码所示:

class FlaskrTestCase(unittest.TestCase):

    def setUp(self):
        self.db_fd, flaskr.app.config[DATABASE] = tempfile.mkstemp()
        self.app = flaskr.app.test_client()
        flaskr.init_db()

    def tearDown(self):
        os.close(self.db_fd)
        os.unlink(flaskr.DATABASE)

    def test_empty_db(self):
        rv = self.app.get(/)
        assert No entries here so far in str(rv.data)

注意到我们的测试函数以 test 开头,这允许 unittest 模块自动
识别出哪些方法是一个测试方法,并且运行它。

通过使用 self.app.get 我们可以发送一个 HTTP GET 请求给应用的
某个给定路径。返回值将会是一个 response_class
对象。我们可以使用 data 属性
来检查程序的返回值(以字符串类型)。在这里,我们检查 No entries here so far
是不是输出内容的一部分。

再次运行,您应该看到一个测试成功通过了:

$ python flaskr_tests.py
.
----------------------------------------------------------------------
Ran 1 test in 0.034s

OK

作者:andy,如若转载,请注明出处:https://www.web176.com/flask2/21738.html

(0)
打赏 支付宝 支付宝 微信 微信
andy的头像andy
上一篇 2023年5月18日
下一篇 2023年5月18日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注