Citrus Framework无法从SQLResource执行语句

时间:2015-10-30 11:49:48

标签: citrus-framework

我希望有人有柑橘经验:) 我已经针对Oracle数据库编写了柑橘(1.4和2.3)数据库测试。 在柑橘中,您可以将查询作为String或引用文件资源传递。

String选项工作正常,验证成功:

oracle.jdbc.pool.OracleDataSource ds = new oracle.jdbc.pool.OracleDataSource();
//init ds ...
query(ds).statement("SELECT * FROM TOUR WHERE ID = 12345").validate("STATUS", "1");

但是资源选项失败:

oracle.jdbc.pool.OracleDataSource ds = new oracle.jdbc.pool.OracleDataSource();
//init ds ...
query(ds).sqlResource("classpath:testdata/template/dbQuery.sql").validate("STATUS", "1");

调试代码显示Citrus希望sqlResource文件中的所有语句都用";"分隔。然后它将正确创建单独的语句并尝试执行它们。但是执行以&#34 ;;"结尾的语句导致" SQLSyntaxErrorException:ORA00911:无效字符"。

我在这里错过了一些东西吗?

1 个答案:

答案 0 :(得分:0)

认为这是一个错误,问题已经打开(https://github.com/christophd/citrus/issues/79

问题已在2.5.2版Citrus

中修复