如何为可视组件创建单元测试

时间:2017-03-07 19:47:35

标签: javascript html5 unit-testing user-interface

我是ScadaJS的作者,我需要为可视组件创建单元测试。到目前为止,通过人工交互手动检查组件。

例如,this bug只是通过屏幕截图描述可视组件的问题。记者说“它应该看起来像this,但看起来像that,这不是预期的事情”。开发人员修复组件,在展示页面中手动检查它,如果一切顺利,请关闭问题。

由于一个组件的更改可能会破坏多个其他组件,我认为我们应该自动执行这些测试。在视觉材料发挥作用的图书馆中,人们如何进行此类检查?

猜测

我们可以编写一个自动创建鼠标移动和点击的脚本,然后创建一个.gif,用于创建参考点。如果有任何变化,两个GIF的差异将不是黑色.gif,因此测试套装将抛出异常。如果我们设置一个标志来指示“此组件的一切正常,我只更改了字体大小”,那么它将使用新的.gif作为参考点。

1 个答案:

答案 0 :(得分:1)

Selenium可能值得一试。图像比较可能是一个选项,但我不认为它是非常有用的。即使组件中最轻微的变化也会破坏测试并存储参考图像是相当繁琐的工作。