2024-04-25 13:19:30 发布
网友
我一直在测试路由是否存在
def test_index(self): r = self.app.get("/") self.assertEqual(200, r.status_code, "Status code was not 'OK'.")
我的模板有一个指向其他页面的超链接。有没有办法测试这种情况是否存在?你知道吗
好吧,如果你在测试模板,你呈现的每个模板都是对某个路由请求的结果。如果您使用url_for()呈现模板中的url,那么如果url指向不存在的路由,它将引发BuildError,并且服务器将返回状态代码500。因此,如果只是检查路由,就不需要手动解析模板进行测试。你知道吗
url_for()
BuildError
示例:
from flask import Flask, render_template_string app = Flask(__name__) @app.route('/index') def index(): return render_template_string(""" {{ url_for('index') }} {{ url_for('blabla') }} """) def test_index(self): r = self.app.get("/index") self.assertEqual(200, r.status_code, "Status code was not 'OK'.")
这将导致 routing.BuildError: Could not build url for endpoint 'blabla'. Did you mean 'static' instead?错误,使测试失败。你知道吗
routing.BuildError: Could not build url for endpoint 'blabla'. Did you mean 'static' instead?
我希望这个解释足够清楚!你知道吗
好吧,如果你在测试模板,你呈现的每个模板都是对某个路由请求的结果。如果您使用
url_for()
呈现模板中的url,那么如果url指向不存在的路由,它将引发BuildError
,并且服务器将返回状态代码500。因此,如果只是检查路由,就不需要手动解析模板进行测试。你知道吗示例:
这将导致
routing.BuildError: Could not build url for endpoint 'blabla'. Did you mean 'static' instead?
错误,使测试失败。你知道吗我希望这个解释足够清楚!你知道吗
相关问题 更多 >
编程相关推荐