是否有任何有效的测试方法可以建议在将数据从HTML解析为SQL后测试数据?
要提供上下文,我将从HTML页面(包含单个表)迁移数据,这些页面按顺序编号到MySQL表中。正在使用Domdocument和XPath来提取数据DAO样式和输出似乎是一致的。检查HTML和数据库(随机选择,顺序,一些编程算法......)的最佳方法是什么?
答案 0 :(得分:1)
也许您可以使用diff算法将原始HTML与解析后的文本进行比较并计算百分比。由于html标签和喜欢它,显然永远不会是100%匹配,但你可以找出一个可接受的范围并以这种方式测试你的数据。
我认为随机抽样是最好的,除非你有时间和处理能力来测试一切。
这是diff算法的PHP实现=> http://paulbutler.org/archives/a-simple-diff-algorithm-in-php/
答案 1 :(得分:1)
因为您无权访问原始数据而只能访问已解析的HTML,所以您只能执行两次完全相同的操作并进行比较。
您还可以根据提取的数据创建新的DOM文档并比较DOM。 通过这种方式,您可以测试错误导入的数据。
但是所有这些方法都与您用于提取的方法一样可靠。并且可能不值得服务器负载来测试每个导入。
随机测试发现错误的成功率非常低,你可能更适合人眼。
你至少可以构建一种注意奇怪行为的概率算法。
f.e。如果您要解析每日新闻Html页面,并且在某一天您只能获得3个新闻项目,每页的平均新闻项目应该是10左右。您当然可以调整这些边距。