Je suis aux prises avec une tâche pour tester mon jet Apache Storm qui lit réellement à partir d'une file d'attente et émet un message sous la forme d'un tuple. Je veux utiliser la file d'attente intégrée, mettre un message sur la file d'attente et actif ce message est émis par mon bec. Quelqu'un pourrait-il aider à quoi utiliser pour accomplir cela?Comment faire pour tester les becs dans la tempête
0
A
Répondre
0
Il y a probablement une tonne de façons de faire cela mais voici un exemple de test simple utilisant mockito et testng (\ src \ test \ java \ com \ exemple \ storm \ spout \ DummySpoutTest.java):
package com.example.storm.spout;
import static org.mockito.Matchers.anyList;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import org.testng.annotations.Test;
import backtype.storm.spout.SpoutOutputCollector;
import com.example.storm.spout.DummySpout;
public class DummySpoutTest {
@SuppressWarnings("unchecked")
@Test
public void shouldCreateDummyMessage() {
// given
DummySpout spout = new DummySpout();
SpoutOutputCollector collector = mock(SpoutOutputCollector.class);
spout.open(null, null, collector);
// when
spout.nextTuple();
// then
verify(collector).emit(anyList());
}
}