【发布时间】:2009-06-07 16:12:41
【问题描述】:
我有一个关于网站开发领域的测试用例的非常基本的问题。为站点中所有页面的每个超链接设置单独的测试用例是否有意义?例如我的网站可能有 10 个页面,每个页面大约有 10 个页面。里面有10个超链接。我是否应该有 100 个测试用例,每个测试用例都解释该链接应该将我重定向到哪里。我只想知道在上线之前确保所有链接正确的最佳方法是什么。
【问题讨论】:
我有一个关于网站开发领域的测试用例的非常基本的问题。为站点中所有页面的每个超链接设置单独的测试用例是否有意义?例如我的网站可能有 10 个页面,每个页面大约有 10 个页面。里面有10个超链接。我是否应该有 100 个测试用例,每个测试用例都解释该链接应该将我重定向到哪里。我只想知道在上线之前确保所有链接正确的最佳方法是什么。
【问题讨论】:
嗯 - 作为常识,如果你想确保它们工作,你将不得不以某种方式对它们进行烟雾测试 - 但我强烈建议你为此设置某种自动化 UI 测试套件。
测试用例通常是在功能上定义的,因此将测试用例仅与代表功能的超链接(在您的情况下)相关联是有意义的,如果它们只是重定向,您最终会得到一堆非常隆重的东西很快就会被灰尘覆盖的文档。
【讨论】:
“测试直到恐惧变成无聊”
真的取决于你对每个链接的担心程度......
【讨论】:
您可以将它放在私人服务器上并使用 wget 来测试是否有损坏的链接。 GNU Wget manual page 将是一个很好的起点。 recursive 选项和 spider 选项似乎是最常用的。如果您只想报告您的域,请查看 -D 选项。
如果您编写了一个快速的 bash 脚本,那么您将来也会使用它。
这显然是一种简单快捷的选择。
【讨论】:
一种中间立场,就是爬取网站并确保所有链接返回 200/300 状态(也就是说不是 404 或 500)。
您甚至可以将其扩展为编写正则表达式来定义哪些应该返回重定向,哪些应该直接返回 200s。
【讨论】:
如果这些链接没有太大变化,您可以考虑使用一些简单的测试:它们仍然指向页面吗?该页面在同一台服务器上吗?它是一个html页面吗?它是一个https链接吗?等等。而且,正如 Cogsy 所说,您可以认真测试最重要的一项。
【讨论】: