Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from space FUNCTDEV and version SVC2020.1

...

Table of Contents
maxLevel1

了解 HTML 清理

HTML 清理工具识别并报告输入中的 HTML/XHTML 编码和结构问题。此外,该工具还可以通过修复这些问题并可选地将代码转换为 XHTML 来转换代码。转换后的代码作为输出返回。

默认情况下,HTML 清理工具被配置为清理 HTML 文件。如果希望该工具将代码转换为 XHTML、对 HTML 片段进行操作,或者对 ASP、JSP 和 PHP 文件进行操作,可以按照 配置 HTML 清理中的描述更改配置设置。

它可以被链接到另一个测试,以对 web 场景步骤执行时发生的浏览器请求进行操作。或者,它可以作为一个独立的测试使用,对工具配置面板的 Input 选项卡中指定的文件/文本进行操作。

...

作为一个测试套件工具,它允许你将识别和清除 HTML 问题作为功能测试场景的一部分。若要在静态分析期间识别 HTML 问题,请使用“检查 HTML 格式良好性”规则,该规则位于清理 HTML 类别中。此规则具有与 HTML 清理工具相同的自定义选项。注意,静态分析选项不允许你也通过修复这些问题和将代码转换成 XHTML 来转换代码。

配置 HTML 清理
Anchor
Configuring HTML_Cleanup
Configuring HTML_Cleanup

可以自定义以下选项:

  • Show informational messages: 使用默认的工具配置,此选项确定 SOAtest 是否报告在清理期间所做的更改。如果更改了 HTML 清理配置,使其不再向编辑工具或其他工具发送“已转换的源”输出,则此选项将确定 SOAtest 是否报告进行指定转换所需的更改。消息将在结果窗口中报告,可以通 Window 菜单访问。

  • Process ASP, JSP, PHP files: 确定 SOAtest 是否尝试在可用的 ASP、JSP 和 PHP 文件上执行指定的目标操作。注意,启用此选项时,SOAtest 将忽略这些文件中的 ASP <% ...%>, JSP <% ...%>, and PHP <? ...?> 标记,以及忽略 JSP 脚本和动态生成 HTML 属性或属性值的自定义操作。

  • Keep embedded scripts and styles: 确定 SOAtest 是否尝试将所有脚本和样式(包括包含特殊字符的脚本和样式)提取到外部文件。

  • Target Document Type: 配置所执行清理的类型和级别。有关可用选项的更多信息,请参见 Customizing Target Document Type
  • Add XML Declaration: 确定 SOAtest 是否在转换后的源文件的开头添加 XML 声明(<?xml version="1.0"?>)。此选项仅在 XHTML (DTD) 模式下可用。

  • Update IDs in DOCTYPE declaration: 确定 SOAtest 是替换 DOCTYPE 声明的 Id(如果文档已经包含 DOCTYPE 声明),还是使用 ID 添加 DOCTYPE 声明(如果文档还没有包含 DOCTYPE 声明)。此选项仅在 XHTML (DTD) 模式下可用。

自定义目标文档类型
Anchor
#Customizing Target Document_Type
#Customizing Target Document_Type

你可以通过更改 HTML Cleanup 配置面板的 Target Document Type 字段中列出的选项来配置所执行的清理的类型和级别。

...

选项说明例如

HTML Fragment

清除 HTML 片段,但不将它们转换为 XHTML。在此模式下,SOAtest:

  • 如果为未知标记添加了缺失的结束标记,则添加缺失的结束标记并报告。
  • 设置属性的默认值(即,默认为“true”的选项)。
  • 在属性值周围添加引号。
  • 检查需要数值的属性中的非数值。
  • 移除孤立的结束标记。SOAtest 没有在这种模式下处理常规的结构问题。
Note
title注意
这是默认的模式。

<html>
hello world
<table WIDTH=20>

转换成

<html>

hello world

<table WIDTH="20"></table></html>

HTML Document

清除完整的 HTML 文档,但不将其转换为 XHTML。在此模式下,SOAtest:

  • 执行所有 HTML 片段模式操作。
  • 通过确保文件满足正常的 HTML 需求,修复了整个文档结构的问题。
  • 文档要求 <HTML> <HEAD> <TITLE> </TITLE> </HEAD> <BODY> </BODY> </HTML>
  • 片段要求 <HTML> <HEAD> <TITLE> </TITLE> </HEAD> <FRAMESET> </FRAMESET> </HTML>

<html>
hello world
<table WIDTH=20>

转换成

<html><head><title></title></head><body>
hello world
<table WIDTH="20"></table></body></html>

XHTML Fragment

清除 HTML 片段并将其转换为 XHTML。在此模式下,SOAtest:

  • 执行所有 HTML 片段模式操作。
  • 必要时将嵌入的脚本和样式表移动到外部文件。
  • 为各种标签添加缺失的属性(例如,为 IMG 标签添加缺失的 src 属性)。
  • 确保所有属性都是小写的。

<html>
hello world
<table WIDTH=20>

转换成

<html>
hello world
<table width="20"> </table></html>

XHTML (DTD)

清除 HTML 文档并将其转换为 XHTML。在此模式下,SOAtest:

  • 执行所有 XHTML 片段和 HTML 文档模式操作。
  • 尝试将文档转换为符合默认 DTD(W3C 中的 XHTML-transitional DTD)或 DTD Public IDSystem ID 字段中指定的 DTD 的 XHTML。
  • 添加 DOCTYPE 声明。
  • 在转换源的开头添加一个 XML 声明<?xml version="1.0"?>)(如果启用了 Add XML Declaration 选项)。

<html>

hello world

转换成

<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head><title />
</head><body>
hello world
<table width="20">
</table></body></html>

保存转换后的文件


如果想要 SOAtest 保存由 Cleanup HTML 工具转换的文件,则如下添加一个写文件工具输出:

...