【发布时间】:2014-05-24 20:07:09
【问题描述】:
我正在自学后端和前端 Web 开发(如果重要的话,我会使用 Flaks),在对我的应用程序进行单元测试时,我需要一些指导。
我最关心的是这些不同的情况:
数据的内部一致性:这很简单——当涉及到登录过程等问题时,我的目标是 100% 的覆盖率,并且最一般地,检查所有内容在每次请求保持一致后,python 代码和数据库之间都会发生这种情况。
-
JSON 响应:我正在 atm 为我的应用程序上的每个
get/post调用执行测试请求,然后 断言 json 响应必须这个和那个,但老实说,我不太欣赏这样做的价值 - 可能是因为我的应用仍处于早期阶段?- 我应该继续测试每个请求的每个 json 响应吗?
- 如果是,有什么长期好处?
-
外部 API:我在这里读到了相互矛盾的意见。假设我正在使用外部 API 来翻译一些文本:
- 我是否应该只测试非常高级别的 API,即查看我是否获得了访问令牌,仅此而已?
- 我是否应该测试返回的 json 是否符合我的预期?
- 我是否应该不进行任何测试以加快我的测试套件的速度并且不让它依赖于第三方 API?
-
输出的 HTML:我也迷路了。假设我正在测试函数 add_post():
- 我是否应该测试在请求之后的页面上所需的帖子实际上是否存在?
- 我开始检查
response.data行中是否存在字符串/html 标签,但后来我有点放弃了,因为 1)这需要很多时间,2)我必须不断地重写测试,因为我我经常更换应用。 - 在这种情况下推荐的方法是什么?
谢谢你,很抱歉冗长。我希望我说清楚了!
【问题讨论】:
-
你描述的不是单元测试;这些是集成测试。
标签: python unit-testing flask integration-testing