我正在编写一个自动化测试框架,在每个操作(加载新页面等)之后我想验证生成的 html。我正在用 java 编写框架,测试可能会在位于防火墙等后面的环境中运行。
我目前有字符串格式的 html,所以我正在寻找一种方法来验证字符串中的 html 是否有效。我正在查看 jTidy,但找不到如何执行此操作的好示例。有人知道吗?
此外,我可能还会考虑验证 css 文件,因此如果建议可以考虑到这一点。
提前致谢, 詹姆斯
编辑:
我现在在 JTidy 中有一些工作,希望更有知识的人可以验证它。如何从中打印出错误?
tidy = new Tidy();
ByteArrayOutputStream os = new ByteArrayOutputStream();
String html = ScenarioFramework.driver.getHtml();
try {
Node node = tidy.parse(new ByteArrayInputStream(html.getBytes("UTF-8")), os);
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
}
if ((tidy.getParseErrors() > 0) || (tidy.getParseWarnings() > 0)) {
System.out.println("Tidy Parser errors: " + tidy.getParseErrors());
System.out.println("Tidy Parser warnings: " + tidy.getParseWarnings());
return false;
} else{
//return with no error
return true;
}
最佳答案
取决于您希望验证的效果。我见过有人将他们的测试与 http://validator.w3.org/docs/api.html 集成在一起... 只需对我相信的服务进行 HTTP 发布即可。会提供 jTidy 的更多详细信息。
它们也有 CSS 的等价物。
抱歉,但我没有代码,只是我曾经看过的一个演示,我认为有一天可以很酷地进行仿真。
不过,请对服务友善一些……如果您可以判断 HTML 是否未更改,您可能希望避免验证。
关于java - 验证 selenium 脚本中的 Html 示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7669855/