Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unit testing Velocity模板引擎插件还是扩展?_Unit Testing_Code Coverage_Velocity_Velocity Template Language - Fatal编程技术网

Unit testing Velocity模板引擎插件还是扩展?

Unit testing Velocity模板引擎插件还是扩展?,unit-testing,code-coverage,velocity,velocity-template-language,Unit Testing,Code Coverage,Velocity,Velocity Template Language,有人尝试过构建Velocity模板引擎扩展或插件吗 我们的团队大量使用Velocity模板语言进行API输入/输出转换。由于VTL代码中包含许多复杂的逻辑,我们实现了一种对VTL代码进行单元测试的方法。然而,目前的问题是,没有办法测量这些单元测试的代码覆盖率。我们想要实现一个VTL引擎扩展来计算执行这些测试时的覆盖率。有没有人有任何见解或类似的经验 谢谢 Velocity还没有此功能 同时,您可以: 在上打开一个问题,以便有机会将其包含在下一个版本中 解决问题的方法:准备(自动!)一份模板副本

有人尝试过构建Velocity模板引擎扩展或插件吗

我们的团队大量使用Velocity模板语言进行API输入/输出转换。由于VTL代码中包含许多复杂的逻辑,我们实现了一种对VTL代码进行单元测试的方法。然而,目前的问题是,没有办法测量这些单元测试的代码覆盖率。我们想要实现一个VTL引擎扩展来计算执行这些测试时的覆盖率。有没有人有任何见解或类似的经验


谢谢

Velocity还没有此功能

同时,您可以:

  • 在上打开一个问题,以便有机会将其包含在下一个版本中
  • 解决问题的方法:准备(自动!)一份模板副本,其中每一行都以带有文件和行号的注释作为前缀,并使用测试输出关联覆盖率
  • 修补速度要做到这一点,并不难:
    • org.apache.velocity.runtime.parser.Node.java
      类需要一个新的int字段,
      visted
      初始化为0
    • 在所有其他具有此方法的解析器节点的所有
      render()
      方法中,使每个
      render()
      方法增量
      已访问的
    • 在测试用例之后,使用扩展类
      o.a.v.runtime.parser.visitor.BaseVisitor
      为每个模板收集每个节点位置信息和渲染数量
如果您成功地完成了最后一个选项,请务必提交一个补丁