Как мне сравнить мой ответ с новым сотрудником? - PullRequest
0 голосов
/ 30 мая 2018

Оформить заказ мой скриншот:

screenshot depicting AssertionError

@Test
public void getAllEmployeesTest() throws IOException {
    HttpResponse response = http.get("http://localhost:8087/employee");
    List<Employee> expectedList = new ArrayList<Employee>();
    expectedList.add(new Employee(2, "Yashwant", "Chavan", 30, true));
    List<Employee> actualList = gson.fromJson(EntityUtils.toString(response.getEntity()), new ArrayList<Employee>().getClass());
    Assert.assertEquals(actualList, expectedList);
}

Ответы [ 3 ]

0 голосов
/ 30 мая 2018

Если класс Employee не реализует метод equals, то используется метод Object equals.Метод Object equals вернет true, если оба объекта равны.

Если вы не хотите реализовывать метод equals, вы можете использовать ReflectionAssert.assertReflectionEquals (https://mvnrepository.com/artifact/org.unitils/unitils-core/3.4.6), который сравнивает поля в двух объектах с помощью отражения.

0 голосов
/ 30 мая 2018
  1. Как уже говорили другие, убедитесь, что ваш Employee класс реализует разумный equals().Если это просто POJO, equals сгенерировано
  2. Правильное использование assertEquals() равно assertEquals(expected, actual).Используйте его, чтобы иметь метод equals() ожидаемого объекта, который будет вызван (а не наоборот, что может быть или не быть проблемой).
  3. Обратитесь к этому вопросу для способа десериализацииСписок с Gson: Google Gson - десериализовать список объект?(универсальный тип)
0 голосов
/ 30 мая 2018

Вы должны рассказать нам больше о том, что вы ожидаете увидеть и что вы на самом деле видите.Тем не менее, я предполагаю, что Assert.assertEquals(actualList, expectedList); не удается.Я также предполагаю, что ваша конечная точка сотрудника должна вернуть этого соответствующего сотрудника ...

Итак, ваш класс Employee разумно реализует equals(Object other)?Если это так, вы должны быть в состоянии сделать, как вы делаете.Если нет, сделайте это и попробуйте снова.

См. Также Утверждение о списке в Junit

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...