我已经将带有 Pojo 模型的 .jar 文件导入到我的 Guvnor 存储库中,我想成为事实。其中一个类有一个带参数的构造函数,这是我无法在给定部分的测试场景中实例化的唯一事实。我得到一个指向该类的 InstantiationException。
我尝试将这些字段添加到事实中并用我想要的输入值填充它们,但仍然没有。
我的问题是,对于在构造函数中有参数的事实,是否有任何特殊的方法我应该这样做,因为我可以用任何其他对象测试我的规则。
谢谢
如果您的事实没有构造函数参数会更好,但您可以使用以下解决方法:
创建一个规则,用构造函数参数断言你的事实,并确保它只适用于测试用例
when
MyBreadcrumbThatDefinesTestRuns()
then
MyFactWithConstructorArgs f = new MyFactWithConstructorArgs("arrgh")
insert(f)
end
现在,您需要在模型中定义一个名为的事实,MyBreadcrumbThatDefinesTestRuns
并将其插入到Given
测试定义部分的会话中。