@jvmchat

Страница 2636 из 2890
Sergey
07.07.2018
17:35:08
откуда она там может быть, это не спринг жеж

naughtyBit
07.07.2018
17:36:19
какая автоконфигурация?
ну например в log4j2 есть такая фитча, если у yaml/xml/etc файла есть префикс test, то логи настроятся именно из этих настроек, вот я хотел узнать если такое же для jdbc. Ну раз нет, так нет

Sergey
07.07.2018
17:36:36
log4j это что?

Либа, а jdbc?

Google
Alpha
07.07.2018
17:39:37
тык, а как тогда взять конфиги для тестируемой бд если для основной держишь в properties?
Берёшь и без задней мысли добавляешь профиль для спринга, а потом просто в тестах указываешь его

https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-profiles.html

naughtyBit
07.07.2018
18:39:06
тык, ещё 1 вопрос, толком нагуглить не могу: При использование тестовой базы данных, её надо пересоздавать и перезаполнять при каждом тесте?

Igor
07.07.2018
18:41:44
@flood

Max
07.07.2018
18:51:42
Либа, а jdbc?
Интерфейс для работы с бд вроде. Java database connection или connector. Гуглится изи

naughtyBit
07.07.2018
18:53:03
имхо это был риторический вопрос, т.к. я не верно написал

Vyacheslav
08.07.2018
05:36:32
Интерфейс для работы с бд вроде. Java database connection или connector. Гуглится изи
Сам подумай: чем чище окружение, тем точнее тесты.

Можно для тестов in memory hsqldb использовать

Диоген
08.07.2018
09:30:35
Можно для тестов in memory hsqldb использовать
Это да, если нет никакого специфического для конкретной бд синтаксиса запросов

Евгений
08.07.2018
09:31:06
А если есть специфический синтаксис, то можно тест контейнеры использовать

Диоген
08.07.2018
09:31:27
А так я недавно вышел на некую Яндексовскую поделку на гите а разделе куа тулз

GitHub - yandex-qatools/postgresql-embedded: Embedded PostgreSQL Server https://github.com/yandex-qatools/postgresql-embedded

Но это очень костыльная херня, очень вербозная. Суть в том, что эмбед там как я понял для красного словца, а по факту они касают обычный полный дистрибутив постгрес каждый раз при запуске тестов (ну можно указать папку, если он уже скачан)

Google
Диоген
08.07.2018
09:35:18
В общем я в тот раз забил

А если есть специфический синтаксис, то можно тест контейнеры использовать
А это как? Это надо, чтобы у меня уже была какая-то внешняя аналогичная бд и было к ней подключение?

Tolegen
08.07.2018
09:52:46
А это как? Это надо, чтобы у меня уже была какая-то внешняя аналогичная бд и было к ней подключение?
Это надо, чтобы у тебя был докер, в котором будет запускаться инстанс БД.

Igorek
08.07.2018
10:02:59
Привет народ. Есть проблема - куча файлов допустим цсв, их надо обработать там и залить в целевую базу данных (монго). Но в куче файлов могут быть дупликаты. Как эффективно и по современному решить эту проблему?

Диоген
08.07.2018
10:13:11
Я бы какой-нибудь md5 по файлу считал

Диоген
08.07.2018
10:14:44
How to remove duplicates based on a key in Mongodb? - Stack Overflow https://stackoverflow.com/questions/13190370/how-to-remove-duplicates-based-on-a-key-in-mongodb

Igorek
08.07.2018
10:37:18
Я бы какой-нибудь md5 по файлу считал
По файлу нельзя тк в файле могут быть записи другого файла

Md5 по записи считать может

Но это хранить где-то надо

Вообще думал может кафку прикрутить :)

И определять дупликаты в спарке

Artjom
08.07.2018
10:50:43
А если есть специфический синтаксис, то можно тест контейнеры использовать
Тест контейнеры это грамотная тема, жалко только проблемы с докер имеджем оракла... мало того что около 8гб так еще и лицензияпроблемы

Митко Соловец?
08.07.2018
13:37:06
уже как несколько месяцев выпущены офф образы от оракла

Vit
08.07.2018
13:38:15
Правильно понимаю что речь про бд ?

Google
Митко Соловец?
08.07.2018
13:38:24
да

https://github.com/wnameless/docker-oracle-xe-11g

Artjom
08.07.2018
13:38:56
Значит устаревшая инфа у меня

Митко Соловец?
08.07.2018
13:39:16
тест контейнеры в своей репе с примерами юзают эти образы

я уже запускал, пробовал - все окей

Vit
08.07.2018
13:39:28
Можно взять готовый на убунте xe, для небольшой бд за глаза хватит

Митко Соловец?
08.07.2018
13:39:39
единственный косяк - нет утилит импорта дампа

это неприятно

Kirill
09.07.2018
10:50:18


Stanislav
09.07.2018
10:51:35
Почитать про устройство дженериков

И их взаимодействие с массивами

Митко Соловец?
09.07.2018
10:52:51
@javastart

Vladimir
09.07.2018
10:54:47
T[] tempArr = Arrays.copyOf(t,t.length + 1); В рантайме дженерики стираются, T -> Object

Admin
ERROR: S client not available

Павел
09.07.2018
11:02:46
Всем привет. У меня снова вопрос по тестам. Подскажите кто знает пожалуйста

https://pastebin.com/ijU2c0iA

Mi
09.07.2018
11:14:39
https://pastebin.com/ijU2c0iA
1) приватные методы обычно не тестируют, так как они нужны для правильной работы публичных методов и разграничения логики 2) С точки зрения теста ему не особо важно как именно реализован метод, важно что при определенных входных данных ожидается нужный результат, будь то корректный набор данных или эксепшон — Есть фреймворки, которые позволяют замокать приватные методы, например PowerMock, но имхо если нужно тестировать приватный метод, то с кодом что-то не так

Yan
09.07.2018
11:18:45
тестируй один публичный метод

Google
Alpha
09.07.2018
11:20:46
Да уже нашел что приваиные не тестируют, спасибо. Но второй вопрос немного уточню. Есть публичный метод внутри которого вызываются 3 приватных. Вот как в моем примере. В самом тесте как мне замокать эти приватные методы? Или их не нужно мокать и они должны отработать?
Ну приватные методы пишут для того что бы убрать бойлерплейт из публичных. Просто рассматривай код приватного метода как часть публичного и подходи к тестированию публичного метода учитывая это допущение

Павел
09.07.2018
11:21:39
Понял вас господа, спасибо)

Victor
09.07.2018
11:38:50
IMHO, приватный метод можно сделать package-private и спокойно его тестировать.

Alpha
09.07.2018
11:41:10
IMHO, приватный метод можно сделать package-private и спокойно его тестировать.
Кстааати, тоже популярная практика и вполне адекватная.

Tolegen
09.07.2018
11:47:27
Ну по сути это костыль ради тестирования. Иногда - да, выбора нет. А так - лучше всё-таки порефакторить.

Victor
09.07.2018
11:50:40
Ну по сути это костыль ради тестирования. Иногда - да, выбора нет. А так - лучше всё-таки порефакторить.
создавать класс ради одного-двух методов из тестируемого класса? Или как предлагаете рефакторить?

Tolegen
09.07.2018
11:53:16
создавать класс ради одного-двух методов из тестируемого класса? Или как предлагаете рефакторить?
Сложно сказать в общем случае. Как уже указали выше - если хочется тестировать приватный метод, значит что-то не так. Скорее всего слишком много обязанностей в одном классе. Но на всякое правило есть исключение. Поэтому ваш способ тоже имеет право жить) по крайней мере это лучше, чем PowerMock (хотя опять же могут быть исключения - например какой-то тяжеловесный алгоритм или коннект).

В общем я бы предложил стараться избегать этой практики. Ослабление видимости может соблазнить на использование в другом контексте - а это уже abstraction leak, который потом трудно вылавливать.

И растут такие проблемы незаметно. А потом оказывается, что нельзя улучшить производительность, потому что у нас завязка на вот эту логику, которую просто так не тронешь. И начинают расти костыли вокруг костылей) в общем казалось бы простой вопрос...

Mikhail
09.07.2018
12:32:38
Господа хорошие, а кто тут aws rds юзает

вот то, что они говорят, что там PostgreSQL - это правда постгря, или это enterprisedb?

Yan
09.07.2018
12:34:53
постгре

Mikhail
09.07.2018
12:35:30
постгре
а как быть с тем, что постгря согласно документации не умеет мультизоны?

а Амазон их предлагает, как фичу

Таир
09.07.2018
12:38:31
и что это вообще за фича такая, интересно

Mikhail
09.07.2018
12:39:51
и что это вообще за фича такая, интересно
не могу знать, это со слов дба)))

но согласно сайту enterpisedb - умеет

Страница 2636 из 2890