本主题介绍检查链接工具,它标识断开的链接。
本章包含:
了解检查链接
检查链接工具识别输入中由于缺少页面、无效的电子邮件地址、格式错误的 URL 或服务器连接问题而中断的链接。它还可以识别指向站点根以外页面的重复锚和链接。
可以将该工具链接到浏览器回放工具中,检查给定测试步骤上的链接。
还可以检测执行特定文件的静态分析时(请查阅 执行静态分析)或功能测试套件执行时的链接(请查阅 Configuring SOAtest to Run Static Analysis on Web Scenarios)。若要在静态分析期间检查链接,请使用“只包含有效链接”规则,该规则位于检查链接类别中。该规则与检查链接工具具有相同的自定义选项。
自定义检查链接
可以自定义以下选项:
- Check mailto addresses: 确定 SOAtest 是否尝试验证文件中 mailto 地址的有效性。注意,许多邮件服务器出于安全原因拒绝验证电子邮件地址。
- 如果你在 Check email 中输入自己的电子邮件地址(例如: [email protected] or [email protected])作为字段,那么邮件服务器更有可能返回正确的信息。
- Verify missing pages: 确定 SOAtest 是否使用 HTTP 连接来验证似乎丢失的页面(基于当前项目树内容)是否确实丢失。当检查链接看到指向当前项目树中可用的页面的链接时,它知道该链接无需检查就可以工作。当检查链接看到指向当前项目树中不可用的页面的链接时,除非你启用此选项,否则它不会检查该链接。
- Follow meta refresh and JavaScript redirects: 确定检查链接工具是否检查由元刷新链接重定向到的页面和 JavaScript 重定向到的页面。如果希望检查链接工具在以下情况报告错误,则必须启用该选项 a)当 meta 刷新和 JavaScript 重定向不正常工作(例如,一个重定向导致失踪的页面而不是预期的页面) b)当导航失效链接导致服务器通过返回一个包含元刷新链接的页面或重定向到指定的错误页面的 JavaScript 做出响应,该页面列出在检查链接工具 Report links to these URLs as errors 列表中。
- 例如,假设你的服务器配置为当用户导航到一个断开的链接时,服务器应该通过返回一个包含元刷新链接的页面(http://www.parasoft.com/redirect.htm)或 重定向到指定错误页面(http://www.parasoft.com/oops.htm)的 JavaScript 做出响应,然后客户端显示给用户。还假设你已经表明了指向 http://www.parasoft.com/oops.htm 的链接被认为是错误,并且你已经启用了 Follow meta refresh and JavaScript redirects 选项。如果你的主页有到产品页面的断开链接,那么尝试导航到该页面将导致服务器返回 http://www.parasoft.com/redirect.htm页面,该页面重定向到 http://www.parasoft.com/oops.htm。SOAtest 将报告到产品页面(<A HREF="products.htm">Products</A>)的链接作为一个断开的链接。你的主页 http://www.parasoft.com/index.htm将会视为该断开链接的源。
- 另一个例子,假设已经配置了服务器,这样用户在查看一个特殊的演示文稿后点击“购买”链接,应该发送一个带有元刷新链接的页面,或者重定向到购买页面的 JavaScript(这个配置帮助你追踪有多少用户决定购买后查看)。还假设你启用了 Follow meta refresh and JavaScript redirects 选项。如果单击该购买链接的用户接收到一个页面(http://www.parasoft.com/redirect.htm),其中包含元刷新链接或重定向到购买页面(http://www.parasoft.com/purchase.htm)的 JavaScript,但是 redirect/link 是断开的,那么 SOAtest 将把该链接报告到购买页面(<A HREF="purchase.htm">Purchase</A>)作为断开链接,并指明 http://www.parasoft.com/redirect.htm 上的链接是该断开链接的源。
- SOAtest 将只遵循延迟小于或等于 Maximum refresh delay 字段中指定的延迟的元刷新。延迟设置不适用于 JavaScript 重定向。
- Check the following categories of errors: 确定为哪些类型的错误检查链接测试。可用的错误类别有:
- Malformed URL: 使用非标准 URL 格式的 URL 链接,包含新行字符的 URL(即,URL 被分成两行)或使用不正确的斜杠类型的 URL
- Bad Anchors: 指向重复或丢失锚的链接。
- Broken Link: 不指向指定位置的链接或指向 Report links to these URLs as errors 区域中指定页面的链接。
- Unreachable Host: 指向物理上已与网络断开连接的 Web 服务器的链接。
- Missing Host: 指向域名(DNS 名称)从未向网络当局注册过的机器的链接(因此无效)。
- Page Beyond Root of Site: 指向在当前站点根目录之外出现的页面的链接。例如,如果 http://www.parasoft.com/index.htm 包含相关链接,如 <A HREF="../../../noaccess.html”>,那么 noaccess.html 将报告为站点根目录以外的页面。
- Server Connection Error: 指向处于非活动状态或无法正常工作的 Web 服务器的链接。当Web服务器机器拥有一个有效的域名(DNS 名称)并物理连接到网络,但其 Web 服务器软件存在问题时,就会发生这种情况。
- Report links to these URLs as errors: 允许记录表明发生错误的 URLs。当 SOAtest 发现指向此列表中的 URL 的链接时,它将报告一个断开的链接错误,以便你可以轻松确定错误何时发生。你可以使用 Add 按钮添加单个 URL,或者可以使用 Import 按钮从文本文件中导入 URLs 列表。