2012-02-03 80 views
2

我有一些图表渲染任务,我想用测试覆盖。我在测试中使用了svg渲染器。首先运行我生成一些文件。在接下来的运行中,我想比较输出和第一次运行结果。如果他们是不同的测试应该失败。这很好。问题是这种渲染是依赖于平台的。所以我不能在Linux和Windows上运行相同的测试。我根本不喜欢它。我如何为使用JFreeChart的东西编写跨平台测试?测试图表渲染

+0

为什么不比较SVG文件,而不进行渲染? – Dmitri 2012-02-03 15:47:45

+0

@Dmitri我比较新的渲染结果与旧的结果。我如何在没有渲染的情况下完成它? – 2012-02-03 15:59:49

+0

我误解了,认为你在比较之前将SVG渲染为位图图像。您可以随时保存特定于平台的测试文件并在测试时检测平台。 – Dmitri 2012-02-03 16:18:23

回答

0

确定。我解决了这个问题。如果有人有同样的问题记住下一个提示

  1. JFreeChart默认使用平台特定的字体。所以你应该分发你的ttf字体并为每个标签明确地设置它。您可以通过Font.createFont加载字体。
  2. 使用特定的语言环境。您可以通过下一个代码为您的测试设置默认语言环境Locale.setDefault(Locale.US);