【问题标题】:How to write 'Junits for a Vertx microservice which is interacting with Oracle DB'?如何编写“与 Oracle DB 交互的 Vertx 微服务的 Junits”?
【发布时间】:2020-02-13 23:01:31
【问题描述】:

我需要为 oracle-wrapper 编写 junits(基本上是在 vertx 上编写的与 oracle db 交互的微服务)。如何继续?无法使用 Mockito

【问题讨论】:

    标签: java vert.x openjdk-11


    【解决方案1】:

    如何使用内存数据库,例如:h2 数据库。可以在oracle兼容模式下运行:

    要使用 Oracle 模式,请使用数据库 URL jdbc:h2:~/test;MODE=Oracle 或 SQL 语句SET MODE Oracle

    【讨论】:

      【解决方案2】:

      首先您编写单元测试,重点是确定 Dao 是否正常工作,即每个插入、删除、更新和查询都按预期工作等等。这种方法会假设客户端对微服务的网络访问正常。

      例子:

      public class MyFirstdao {
      
           private static final MyFirstDao dao = new MyFirstDao(dbAddress, dbName, ...);
      
           @Test
           private void insert() {
                SomeResult result = dao.insert(InsertSomeObject);
                assertSomething(result);
           }
      
          ...
      }
      

      之后,您可以创建一个假客户端,您可以使用它来访问微服务并执行预定义的操作。尽管如果您只有一种类型的客户端访问您的微服务,我可能会将这些测试放在客户端上,而不必编写两次相同的代码。我只是在这里推测,但我希望它有用。

      【讨论】:

        猜你喜欢
        • 2018-01-14
        • 2016-05-10
        • 1970-01-01
        • 2017-05-30
        • 2020-08-19
        • 2021-03-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多