Java 测试图表绘制

Java 测试图表绘制,java,testing,jfreechart,Java,Testing,Jfreechart,我想在测试中介绍一些图表渲染任务。我在测试中使用了svg渲染器。在第一次运行时,我生成了一些文件。在下一次运行时,我想将输出与第一次运行的结果进行比较。如果它们是不同的,测试应该失败。很好。问题在于,这种渲染依赖于平台。所以我不能在Linux和Windows上运行相同的测试。我一点也不喜欢。如何为使用JFreeChart的东西编写跨平台测试。我解决这个问题。如果有人有同样的问题,请记住下面的提示 默认情况下,JFreeChart使用特定于平台的字体。因此,您应该分发ttf字体,并为每个标签明确设

我想在测试中介绍一些图表渲染任务。我在测试中使用了svg渲染器。在第一次运行时,我生成了一些文件。在下一次运行时,我想将输出与第一次运行的结果进行比较。如果它们是不同的,测试应该失败。很好。问题在于,这种渲染依赖于平台。所以我不能在Linux和Windows上运行相同的测试。我一点也不喜欢。如何为使用JFreeChart的东西编写跨平台测试。我解决这个问题。如果有人有同样的问题,请记住下面的提示

  • 默认情况下,JFreeChart使用特定于平台的字体。因此,您应该分发
    ttf
    字体,并为每个标签明确设置它。您可以通过
    font.createFont
    加载字体
  • 使用特定的语言环境。您可以通过下一个代码
    locale.setDefault(locale.US)为测试设置默认语言环境

  • 嗯。我解决这个问题。如果有人有同样的问题,请记住下面的提示

  • 默认情况下,JFreeChart使用特定于平台的字体。因此,您应该分发
    ttf
    字体,并为每个标签明确设置它。您可以通过
    font.createFont
    加载字体
  • 使用特定的语言环境。您可以通过下一个代码
    locale.setDefault(locale.US)为测试设置默认语言环境

  • 为什么不在不渲染的情况下比较SVG文件?@Dmitri I比较新渲染结果和旧渲染结果。在没有渲染的情况下,我怎么能做到呢?我误解了,以为您在比较之前将SVG渲染为位图图像。您可以始终保存特定于平台的测试文件,并在测试时检测平台。@Dmitri Ok。我有一些生成SVG文件的模块。在我的测试中,我使用这个模块生成了一些文件。第一次运行时,我生成一些文件。在下一次运行中,我想将新文件与旧文件进行比较。如果有差异,他们就会失败。我现在和你们在一起。那么,能否在两个平台上生成参考文件,以便根据运行测试的位置比较正确的参考文件?为什么不在不渲染的情况下比较SVG文件?@Dmitri I比较新渲染结果和旧渲染结果。在没有渲染的情况下,我怎么能做到呢?我误解了,以为您在比较之前将SVG渲染为位图图像。您可以始终保存特定于平台的测试文件,并在测试时检测平台。@Dmitri Ok。我有一些生成SVG文件的模块。在我的测试中,我使用这个模块生成了一些文件。第一次运行时,我生成一些文件。在下一次运行中,我想将新文件与旧文件进行比较。如果有差异,他们就会失败。我现在和你们在一起。那么,能否在两个平台上生成参考文件,以便根据运行测试的位置比较正确的参考文件?