Как написать «Junits для микросервиса Vertx, который взаимодействует с БД Oracle»? - PullRequest
3 голосов
/ 17 октября 2019

Мне нужно написать junits для оболочки-оракула (в основном микросервис, написанный на vertx, который взаимодействует с oracle db). Как продолжить? Mockito не может использоваться

Ответы [ 2 ]

0 голосов
/ 26 октября 2019

Сначала вы пишете модульные тесты, сосредотачиваясь на том, чтобы установить, что Dao работает должным образом, то есть каждая вставка, удаление, обновление и запрос работают должным образом и так далее. При таком подходе предполагается, что доступ к сети правильно работает с микросервисом от клиентов.

Пример:

public class MyFirstdao {

     private static final MyFirstDao dao = new MyFirstDao(dbAddress, dbName, ...);

     @Test
     private void insert() {
          SomeResult result = dao.insert(InsertSomeObject);
          assertSomething(result);
     }

    ...
}

После этого вы можете создать фальшивого клиента, который можно использовать для доступа кмикросервис и выполнять предопределенные операции. Хотя, если у вас есть только один тип клиента, обращающийся к вашему микросервису, я бы, вероятно, поставил эти тесты на клиенте, вместо того, чтобы писать один и тот же код дважды. Я просто размышляю здесь, но я надеюсь, что это было полезно.

0 голосов
/ 17 октября 2019

Как насчет использования базы данных в памяти, например: h2 database . Который может работать в режиме совместимости оракула:

Чтобы использовать режим Oracle, используйте URL базы данных jdbc:h2:~/test;MODE=Oracle или оператор SQL SET MODE Oracle.

...