|
|
1
3
你需要嘲笑
|
|
|
2
3
很难从您的描述中准确地看出类是如何组成的,但是应该通过它的构造函数或
这将允许您单独测试DAO,并允许您在单元测试中构造模拟数据源,并将其传递给正在测试的DAO。 |
|
|
3
1
重构,以便将连接注入DAO,将DAO注入业务类。然后您可以模拟DAO和/或连接。您可以很容易地编写自己的mock来扩展连接并重写connect()以设置一个布尔值,稍后您可以通过一个方法(如wasconnectcalled())来检索该布尔值。 |
|
|
4
1
我绝对推荐你用 spring-jdbc 而不是自己写这种代码。这将确保连接、语句和结果集正确关闭。Spring还有出色的事务管理,所以您不必担心这一点。 例如,使用SpringJDBC查看这个典型的更新语句:
|
|
|
5
0
使busines类从全局/静态对象工厂检索局部变量。这样,您就可以将工厂置于测试模式,并使它返回模拟对象而不是真实对象。 那就可以了。 |
|
|
6
0
@保罗附议了。一旦您将连接的管理分离出来,您就可以在回调中编写其余的行为,并将其传递给拥有连接的对象,比如UnitOfWork。连接所有者处理事务,并将连接传递给UnitOfWork。一个地方的事务——易于测试,另一个地方的UnitOfWork,使用模拟连接进行测试。 |