Pytanie wbudowany zookeeper dla testu unit / integration


Czy jest jakiś wbudowany zookeeper, abyśmy mogli go użyć w testach jednostkowych? Może być wysyłany wraz z testem i wybiegać z pudełka. Może moglibyśmy wyśmiać niektóre usługi i zarejestrować się w zagnieżdżonym zookeeperze


13
2017-12-28 06:18


pochodzenie




Odpowiedzi:


The Kurator Framework ma klasy TestingServer i TestingCluster (patrz https://github.com/Netflix/curator/wiki/Utilities), które znajdują się w osobnym artefakcie maven (test kuratorski - patrz sekcja Maven / Artifacts of https://github.com/Netflix/curator/wiki).

Są całkiem zrozumiałe lub możesz pobrać bazę danych kustosza i sprawdzić, w jaki sposób są używane wewnętrznie we własnych testach.

Z powodzeniem używaliśmy obu testów jednostkowych w dniu $ DAY_JOB.


19
2017-12-28 18:26





Możesz użyć Narzędzia programu Apache Curator udostępniony serwer ZooKeeper TestingServer które można wykorzystać do testowania. Z maven możesz polegać w następujący sposób

    <dependency>
        <groupId>org.apache.curator</groupId>
        <artifactId>curator-test</artifactId>
        <version>3.2.1</version>
    </dependency>

Możesz też utworzyć serwer procesu zookeepera w następujący sposób

 TestingServer zkServer;

  @Before
  public void setUp() throws Exception
  {
    zkServer = new TestingServer(2181, true);
  }

  @After
  public void tearDown() throws Exception
  {
    zkServer.stop();
  }

Do testowania można użyć klastra TestingCluster, który tworzy wewnętrznie działający zespół serwerów ZooKeeper


12
2017-12-12 06:26





Możesz użyć zookeeper-maven-plugin, który jest udokumentowany tutaj.


0
2018-04-22 15:58





Projekt zookeepera wytwarza "słoik z tłuszczem", który sam wykorzystuje do testowania systemu.

Jest napisane README, pokazując, jak łatwo jest wystartować, ale niestety nie jest on tworzony jako artefakt, więc nie można go powiązać z mavenem.


0
2018-05-18 23:33