Как создать простой модульный тест с использованием junit или testng для класса интерфейса Queue?

Насколько я знаю, точка "." и "local" являются терминами приложения Windows, а не «стандартным» термином, localhost разрешает 127.0.0.1 на уровне TCP / IP, поэтому, если вы хотите убедиться, что вы «совместимы» на разных платформах, вы должны использовать либо localhost, либо 127.0.0.1

0
задан EmmaKrauss 18 January 2019 в 14:27
поделиться

2 ответа

Примерно так:

@Test
public void test() {
    //Given
    String animals[] = {"cat","dog","pony","horse","cheetah"};
    Queue<String> queue = new LinkedList<String>();
    Collections.addAll(queue, animals);

    //When
    queue.add("tiger");

    //Then
    assertThat(queue, hasSize(6));
    assertEquals("tiger",((LinkedList<String>) queue).getLast());
}
0
ответ дан Stoyan Radnev 18 January 2019 в 14:27
поделиться

Из вашего кода я бы порекомендовал:

  1. Сначала поместите этот основной код в другой метод и, если возможно, в другой класс.
  2. Не является обязательным требованием, но избегайте статичности в новом методе.
  3. Читайте о модульном тестировании
  4. Использование jUnit5 для модульного тестирования очень популярно
  5. Возможно, ниже вы хотите прочитать о двойниках (например, Mockito)
[ 117] В вашем случае, и я могу вам сказать, что ваш код не «дружественный к тестам», вы хотите проверить, находится ли элемент в очереди, используя его собственные методы или что-то вроде Mockito, чтобы убедиться, что добавление было вызвано с помощью значение, которое вы хотите проверить, но для того, чтобы вы это поняли, вы должны больше узнать о двойниках, издевательствах, окурках.

0
ответ дан josedacruz 18 January 2019 в 14:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: