Mik*_*ark 6 java graphics junit unit-testing
是否有生成图形的单元测试代码的标准最佳实践?我正在使用Java和jUnit,但我认为这个概念也适用于其他语言.
到目前为止,我能想到的最好的方法是使用Mockito来模拟Graphics对象并断言预先计算的东西,例如(伪代码):
assert that graphics.drawString was called with ("abc", 50, 100)
assert that graphics.setBackgroundColor was called with Color.RED
Run Code Online (Sandbox Code Playgroud)
虽然这一切都很好,但我想知道这是否是正确的方法,或者是否有更多已有的测试图形代码的实践.
我不知道这是否是既定的做法,但我会考虑使用 Batik 项目中的SVGGraphics2D来模拟 Graphics,并比较生成的SVG文件。
与比较二进制文件相比,SVG 文件的优点是相对可读的 XML 文件,因此如果两个文件不相等,您不仅知道存在问题,而且还可以很好地提示问题的确切位置。
相对于您的解决方案的优点是可以查看这些 SVG 文件(例如在浏览器中),因此测试的场景是自我记录的。
| 归档时间: |
|
| 查看次数: |
1501 次 |
| 最近记录: |