为了账号安全,请及时绑定邮箱和手机立即绑定

测试jdbc连接类

测试jdbc连接类

开心每一天1111 2022-05-21 20:02:39
我尝试学习正确且持续地测试我的项目。不幸的是,有一些事情我不明白,因为关于这个话题有很多不同的意见。我不明白如何决定哪些课程“值得”测试它们。作为示例,我从 oracle 中获取了示例 JDBC 连接类:public Connection getConnection() throws SQLException {    Connection conn = null;    Properties connectionProps = new Properties();    connectionProps.put("user", this.userName);    connectionProps.put("password", this.password);    if (this.dbms.equals("mysql")) {        conn = DriverManager.getConnection(                   "jdbc:" + this.dbms + "://" +                   this.serverName +                   ":" + this.portNumber + "/",                   connectionProps);    } else if (this.dbms.equals("derby")) {        conn = DriverManager.getConnection(                   "jdbc:" + this.dbms + ":" +                   this.dbName +                   ";create=true",                   connectionProps);    }    System.out.println("Connected to database");    return conn;} 我知道我可以模拟对象以便能够更孤立地查看班级。测试这样的课程是否有用,或者我可以从做这样的事情中受益,看看理论上是否可以建立联系?public class TestClass {    @Mock    private Connection conn;    @Mock    private Database database;    @BeforeEach    public void setUp() throws Exception {        assertNotNull(database);        when(database.getConnection()).thenReturn(conn);    }}
查看完整描述

1 回答

?
尚方宝剑之说

TA贡献1788条经验 获得超4个赞

单元测试中的模拟可帮助您测试代码中原本会使用资源的部分。使用它来测试一个其唯一目的是建立与资源的连接的类是没有意义的。



查看完整回答
反对 回复 2022-05-21
  • 1 回答
  • 0 关注
  • 116 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号