Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 [3]      все
 Re: Юнит тест,проблема с моком  [new]
забыл ник
Member

Откуда:
Сообщений: 3367
Zzz79
PetroNotC Sharp
Zzz79,

Угу. Отсюда вопрос, что тестируем? И нафига разбирать на байты?
Хибер решает тойота или волга тупо по id записи в бд.

я же те показал что тестируем)

метод выше

А должен тестировать бизнес-логику а не метод
31 июл 20, 15:11    [22176250]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
Zzz79
Member

Откуда:
Сообщений: 560
забыл ник
Zzz79
пропущено...

я же те показал что тестируем)

метод выше

А должен тестировать бизнес-логику а не метод

дак ее там нет)
сказали проверить что джейсон и то что заходит на запись одинаковы- но не получается почему то опять

вот сам метод который надо оттестить

byte[] toBytes(List<TemplateGroup> list) throws JsonProcessingException {
		ObjectMapper mapper = new ObjectMapper();
		mapper.configure(DeserializationFeature.FAIL_ON_IGNORED_PROPERTIES, false);
		return mapper.writeValueAsBytes(list);
	}


вот тест

public class ExporterTest {

	@Test
	public void successWriteJson() throws IOException {
		byte[] bytes = IOUtils.toByteArray(getClass().getResourceAsStream("template_group.json"));
		TemplateGroup templateGroup = TemplateGroup.builder()
				.groupCode("2")
				.groupName("sss")
				.groupDescription("sds")
				.groupOrder(3)
				.build();


		Exporter exporter=new Exporter();
		 byte[] result =exporter.toBytes(Collections.singletonList(templateGroup));
		assertEquals(bytes.length,result.length);


	}



вот джейсон ,который считывается для теста

[
  {
	"groupCode": "2",
	"groupName": "sss",
	"groupDescription": "sds",
	"groupOrder": 3
  }
]



вот результат

java.lang.AssertionError: 
Expected :103
Actual   :77


я не пойму по разному чтоли как то это все конвертится в байты?
вроде под капотом то одно и тоже
31 июл 20, 15:21    [22176259]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 5361
Zzz79
PetroNotC Sharp
Zzz79,

Угу. Отсюда вопрос, что тестируем? И нафига разбирать на байты?
Хибер решает тойота или волга тупо по id записи в бд.

я же те показал что тестируем)

метод выше
для извратов отдельная тема.
Это я тут не один такого мнения)))
31 июл 20, 15:23    [22176261]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
Zzz79
Member

Откуда:
Сообщений: 560
PetroNotC Sharp
Zzz79
пропущено...

я же те показал что тестируем)

метод выше
для извратов отдельная тема.
Это я тут не один такого мнения)))

я сам не знаю зачем эти тесты пишу)но раз сказали надо писать,но и все равно же интересно почему по сути одно и тоже при сериализации становится разными массивами с байтами
31 июл 20, 15:35    [22176271]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 5361
Zzz79,
Как вариант, если пописать против ветра, то добавится пробел. Если по ветру то json бещ пробела.
Но валидный.
31 июл 20, 15:42    [22176275]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
Zzz79
Member

Откуда:
Сообщений: 560
похоже надо сначала из джейсона собрать обьъкт затем его в байты и только потом сравнивать- видимо там какие то хедеры попадают лишние при сериализации
31 июл 20, 15:43    [22176276]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
Zzz79
Member

Откуда:
Сообщений: 560
PetroNotC Sharp
Zzz79,
Как вариант, если пописать против ветра, то добавится пробел. Если по ветру то json бещ пробела.
Но валидный.

поигрался с пробелами - не играет роли ,тот же самый байт массив приходит

в кодировке чтоли дело хз
31 июл 20, 15:45    [22176280]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 5361
Zzz79,
Тестируют циклические штуки
Строка (“Мир“) - - > байты - - >Строка (“Мир“)
31 июл 20, 15:46    [22176281]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 5361
Zzz79
PetroNotC Sharp
Zzz79,
Как вариант, если пописать против ветра, то добавится пробел. Если по ветру то json бещ пробела.
Но валидный.

поигрался с пробелами - не играет роли ,тот же самый байт массив приходит

в кодировке чтоли дело хз
не беги. Выхи впереди.
31 июл 20, 15:47    [22176282]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
Zzz79
Member

Откуда:
Сообщений: 560
PetroNotC Sharp
Zzz79
пропущено...

поигрался с пробелами - не играет роли ,тот же самый байт массив приходит

в кодировке чтоли дело хз
не беги. Выхи впереди.

в том и дело,лид уже пишет ну чо ты там сделал ?)
31 июл 20, 15:56    [22176289]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 5361
Zzz79,

Ни и покажи лиду что сделано. Или ты его по привычке обозвал всяко))?
А по методу, где он у тебя в коде?
Скажи можешь тест записи бд проверить методом "обратно прочли после коммита."
31 июл 20, 16:44    [22176315]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
Zzz79
Member

Откуда:
Сообщений: 560
сделал)))

оказывается как ты и сказал дело было в пробелах
пробелы в джейсоне убрал- тест позеленел
31 июл 20, 16:54    [22176323]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 5361
Zzz79,
Нет уж подробнее.
Кто ставил пробелы так виртуозно и мастерски?
31 июл 20, 17:00    [22176332]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
crutchmaster
Member

Откуда: оттуда.
Сообщений: 1491
Zzz79
сделал)))


Зачем херню сделал? Когда тест обратно покраснеет, как кто будет искать ошибку? Выдаст он у тебя fail, а что fail?
1 авг 20, 05:43    [22176466]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
Zzz79
Member

Откуда:
Сообщений: 560
PetroNotC Sharp
Zzz79,
Нет уж подробнее.
Кто ставил пробелы так виртуозно и мастерски?

ctrl+alt+L
3 авг 20, 09:29    [22176859]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
Zzz79
Member

Откуда:
Сообщений: 560
crutchmaster
Zzz79
сделал)))


Зачем херню сделал? Когда тест обратно покраснеет, как кто будет искать ошибку? Выдаст он у тебя fail, а что fail?

я так понимаю этот тест расчита на проверку шаблонов,которые лежат в ресурсках,периодически тестировщики их меняют и чтобы не поломалось пишутся вот такие тесты- как мне сказали это обычная практика.
3 авг 20, 10:19    [22176883]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 5361
Zzz79
crutchmaster
пропущено...


Зачем херню сделал? Когда тест обратно покраснеет, как кто будет искать ошибку? Выдаст он у тебя fail, а что fail?

я так понимаю этот тест расчита на проверку шаблонов,которые лежат в ресурсках,периодически тестировщики их меняют и чтобы не поломалось пишутся вот такие тесты- как мне сказали это обычная практика.

Тебе сказали что обычная практика, но не объяснили.
Звучит странно что валидный Одинаковый xml или json или ini файл вдруг стал другим при пробеле.
Так что вопрос, нафиг такой юнит тест остается.
3 авг 20, 11:45    [22176951]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
lleming
Member

Откуда:
Сообщений: 1730
PetroNotC Sharp
Zzz79
пропущено...

я так понимаю этот тест расчита на проверку шаблонов,которые лежат в ресурсках,периодически тестировщики их меняют и чтобы не поломалось пишутся вот такие тесты- как мне сказали это обычная практика.

Тебе сказали что обычная практика, но не объяснили.
Звучит странно что валидный Одинаковый xml или json или ini файл вдруг стал другим при пробеле.
Так что вопрос, нафиг такой юнит тест остается.


сранно сравнивать json по как byte array.
3 авг 20, 14:44    [22177040]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
lleming
Member

Откуда:
Сообщений: 1730
{"hello": 22}
{
   hello: 22,
}

как JSON оба сэмпла одинаковые, как byte array разные. Просто нужно тестовые данные обозвать не *.json а *.jsonf например и добавить в idea исключения на форматирование такого расширения но открывать в редакторе как json
3 авг 20, 14:46    [22177042]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
Zzz79
Member

Откуда:
Сообщений: 560
lleming
{"hello": 22}
{
   hello: 22,
}

как JSON оба сэмпла одинаковые, как byte array разные. Просто нужно тестовые данные обозвать не *.json а *.jsonf например и добавить в idea исключения на форматирование такого расширения но открывать в редакторе как json

хорошая идея) надо будет опробовать
а так да - джейсон залетает то валидный,но идея его вот так сохраняет
есть еще путь в кастомный css запилить правила -у нас кстати он есть,но джейсон реадктируется дефолтно,так как не возникало таких проблем))
3 авг 20, 19:01    [22177156]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
Zzz79
Member

Откуда:
Сообщений: 560
вообщем там спасибо человеку кто посоветовал масивы в стринг засунуть и разницу посмотреть)

а вообще в реальности джейсон прихродит длинной строкой,идея его форматит в человекочитаемый фортмат
а это значит лишние пробелы и тд
при мапинге в объект это ни на что не влияет,но вот байт массивы будут разные,на понимание этого пришлось потратить день)
3 авг 20, 22:08    [22177206]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
mrWolf
Member

Откуда: Тридевятое царство
Сообщений: 83
lleming
как JSON оба сэмпла одинаковые

Вот это:
{
   hello: 22,
}
не JSON
вчера, 11:50    [22177336]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
lleming
Member

Откуда:
Сообщений: 1730
mrWolf
lleming
как JSON оба сэмпла одинаковые

Вот это:
{
   hello: 22,
}
не JSON


Про кавычки одинарные забыл. Но тут интересно что теперь firefox отказывается принимать одинарные кавычки сразу ошибка парсера.
Надо как быстро меняется мир
вчера, 20:37    [22177624]     Ответить | Цитировать Сообщить модератору
 Re: Юнит тест,проблема с моком  [new]
crutchmaster
Member

Откуда: оттуда.
Сообщений: 1491
lleming
Надо как быстро меняется мир

json всегда был с кавычками в ключах по стандарту. Если firefox принимал именно json, то это разрабы firefox тогда обкурились. С другой стороны такой js код - валидин.

Сообщение было отредактировано: сегодня, 04:26
сегодня, 04:28    [22177707]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 [3]      все
Все форумы / Java Ответить