Junit使用assert方法比较两个准备好的语句

时间:2017-06-10 01:42:32

标签: junit prepared-statement

我正在测试两个准备好的语句,如下所示,我希望它使用assertEquals显示它们是相同的但是它给我一个错误,结果和expectedResult不相等。

find . -path "/Path/to/B*" -print0 | xargs -0 -J {} scp {} Me@137.92.4.152:/Path/to/

1 个答案:

答案 0 :(得分:0)

参考this SO Question及其答案,了解assertSame的含义。它检查两个对象引用是否相等,这肯定不是你的代码的情况,因为两个不同的connection.prepareStatement(...)调用会给你两个不同的引用/对象。

我不确定PreparedStatement的等式是如何工作的,你可以查看equals()方法的源代码(PreparedStatement只是JDK中的一个接口,它的实现是由驱动程序提供的提供者)和assertEquals的看法就是你所需要的。

您的代码按预期工作。

引自prepareStatement(java.lang.String)

  

返回:       一个新的默认PreparedStatement对象,包含预编译的SQL语句