【问题标题】:Testing Google App Engine site for broken links and other request errors测试 Google App Engine 网站是否有损坏的链接和其他请求错误
【发布时间】:2012-10-05 15:38:26
【问题描述】:

我正在与前端设计师一起开发一个 Web 应用程序,有时我们会犯错误,导致我们的 href 链接因拼写错误或对模板产生不利影响的小更改而中断,或者我犯了破坏请求处理程序的愚蠢拼写错误(我我还不是软件开发专家)

[我的问题接近尾声,但情况是这样的..]

但我想构建一个工具,我可以提供我的 url 处理程序和站点根目录,让它扫描每个页面的 href 链接并对其进行测试。这样,当我们的网站变大时,我们不会惊讶地发现链接断开在页面和功能中。

我在想..

  • 浏览每一页
  • 查找 href 链接(和 css/js 文件)或任何可以关注的 url
  • 请求网址/文件并捕获错误
  • 打印与给定页面中的链接相关的每个错误

然后我会检查我的代码和模板,找出链接断开的原因...

我已经到了我的代码可以在脑海中运行的地步,但是当它启动并运行时我注意到错误,但我也不想点击所有链接...

我的问题是,是否有专门用于此类测试的工具,或者每个人都只是构建自己的工具? (特别是 GAE)或者没有坏链接的最佳做法是什么。

【问题讨论】:

    标签: python google-app-engine testing


    【解决方案1】:

    您需要编写集成测试用例。每个 url 编写一个集成测试。 如果您有 30 个 url,而不是编写 30 个测试函数,并且在测试函数中点击 url 并检查 1. 响应类型 200 和 2. 数据类型 + 预期值,即是否预期返回模板或某个 json 值。

    您还需要检查与给定单个 url 关联的所有可能的参数值。如果您的应用程序是基于 django 的应用程序,那么这可能有助于您编写测试用例:https://docs.djangoproject.com/en/dev/topics/testing/#testing-tools

    我希望这会有所帮助!

    【讨论】:

    • 感谢您的建议!我一定会试试这个。但是我有一个问题,我在哪里放置此代码?它独立于我的网站吗?这样我就可以在本地开发服务器和实时服务器上运行它了吗?
    • 创建一个新的单独的 integration_tests.py 文件,您需要在模块的 BUILD 文件中为其添加构建规则。之后编写您的测试函数并检查覆盖率。只有在它具有 100% 的覆盖率之后,您才能很好地使用您的应用程序。为了检查测试覆盖率做一些搜索。为了您的参考,我检查了已经有一篇您可能想看看的帖子:stackoverflow.com/questions/7524803/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-08
    • 1970-01-01
    • 2012-04-17
    • 2018-08-01
    • 1970-01-01
    • 2018-06-13
    相关资源
    最近更新 更多