@ru_python

Страница 7527 из 9768
Tishka17
26.12.2018
09:19:44
сущность - производство

сущности иерарзхические

fickle asshole
26.12.2018
09:20:12
почему заказчики любят писать сверхкрутое техническое тз сами его не понимая?

Tishka17
26.12.2018
09:20:33
Google
Инженер
26.12.2018
09:20:52
Но это скорее частный случай. У меня есть реализация руками, хотел приложенте найти, которое лучше справится с задачей

fickle asshole
26.12.2018
09:21:02
мне чувак щас такое тз написал а на деле я спрашиваю что надо — ну надо что бы короче эта фигня соединялась с сайтом учебного заведения

SetazeR
26.12.2018
09:21:15
почему заказчики любят писать сверхкрутое техническое тз сами его не понимая?
потому что если бы они его понимали - им бы не требовалось его писать в первую очередь

fickle asshole
26.12.2018
09:21:34
такое ощущение словно получаю оффициальный заказ на первый туалет в селе

innovations

iddqd
26.12.2018
09:22:10
подскажите как обрабатывать символы юникода перед записью в лог файл? вылетает ошибка UnicodeEncodeError

logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO, filemode='w', filename='log.log')

Роман
26.12.2018
09:49:16
Ребят, привет, а как вы пишете интеграционные тесты для каких-либо серверов? И пишете ли вообще?

Tishka17
26.12.2018
09:50:16
ух, я бы тоже послушал

Роман
26.12.2018
09:51:15
ух, я бы тоже послушал
а у тебя нет случайно такого опыта?

Но вообще наверное лучше начать с себя

сейчас 2 подхода есть — это запускаем сервак через Popen и читаем его stderr, stdout, отдельно создается окружение со всеми конфигами и прочим.

Мне лично он не очень нравится ибо как-то нестабильно, в первую очередь потому что нет нормально синхронизации между серваком и тестовым кейсом, все делается при помощи либо time.sleep, либо ожиданием вывода/записи в бд. Также часто нужно внести изменения в свою копию для того, чтобы запустить тесты, ревью не очень удобно.

Google
Роман
26.12.2018
09:55:55
а, еще дебаг и сбор покрытия затруднен

Другой вариант — запускаем класс приложения в отдельном треде, предварительно делаем моки для настроек(не файлы, а просто переменные в памяти) и добавляем memoryhandler в логгер приложения и тоже читаем его. Здесь более стабильно, но тоже далеко от идеала, не быстро и не совсем соответствует реальности. Но гораздо более гибко.

такие дела

залез посмотреть, как это делается у крутых парней — заглянул в gunicorn, а там похоже, никак не делается

т.е. тесты есть, но не совсем интеграционные

Pavel
26.12.2018
10:02:58
У меня не тривиальная обращене))) Пред. История Меня подруга попросила сформилировать заумное описание ПО Есть у нее тех.Дир который постоянно умника из себя строит, и на просьбу купить ноутбук в рамках бюджета, просит прислать тз для ПО (mac из списка исключаем) Задача: Сформулировать заумное описание ПО Window 10 =))))

Я хз что ответить ) Решил сюда скинуть )

Tishka17
26.12.2018
10:04:22
мы делаем так: пишется docker-compose файл с базами, серверами и тестовым образом все стартует, ждем запуска через периодчиеские http запросы серверов, затем стартуем тесты в уже запущенном контейнере

Evgenii
26.12.2018
10:06:20
ребят, у меня логгер не пишет в лог запись, если в ней такой символ ★ UnicodeEncodeError: 'charmap' codec can't encode character '\u2605' in position 61: character maps to <undefined> подскажите что делать?
как раз выше было обсуждение, у меня была похожая проблема, оказалось это из за того что винда, под линухом все норм

Tishka17
26.12.2018
10:06:43
интеграционные тесты - не юнит, они должны общаться с приложением так как с ним общаются реально

Pavel
26.12.2018
10:08:03
Привет! Если начал писать с пхп и пишу на питоне уже пару лет а сейчас есть задача начать писать на c++ как много времени может уйти на адаптацию к новому языку?

Роман
26.12.2018
10:08:12
интеграционные тесты - не юнит, они должны общаться с приложением так как с ним общаются реально
Ну да, с этим согласен, меня только коробит, что они ну очень неудобные

Tishka17
26.12.2018
10:08:21
а азчем вы юазете filehandler? вангую проблемы с передачей логов с систему логирвоания, проблемы с ротацией и несколькими воркерами

минимум

Google
Tishka17
26.12.2018
10:09:55
хотя если это реально плюсы, но без шаблонов, то может меньше

Роман
26.12.2018
10:09:56
в общем, нужно стиснуть булки и улучшать взаимодействие с подпроцессами

Tishka17
26.12.2018
10:10:04
а если адская смесь с си - сочувствую

Tishka17
26.12.2018
10:10:27
почему не stdout?

iddqd
26.12.2018
10:10:52
я и спрашиваю, зачем вы юзаете FileHandler?
там можно указать кодировку

Tishka17
26.12.2018
10:11:04
а до этого без него было?

iddqd
26.12.2018
10:11:40
почему не stdout?
в stdout пишется всё норм. при записи в текстовый файл ошибка возникала

Tishka17
26.12.2018
10:11:50
а в текстовый файл как писал раньше?

Роман
26.12.2018
10:12:20
может кто еще с подобными вещами пердолится?

Tishka17
26.12.2018
10:12:37
имхо, filehandler не нуцжен в современных реалиях

iddqd
26.12.2018
10:13:09
а в текстовый файл как писал раньше?
logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO, filemode='w', filename='log.log')

Tishka17
26.12.2018
10:13:28
есть же journald, да и docker сам лог ведет

Tishka17
26.12.2018
10:14:10
ты его ротировать задолбаешься

если будешь сам писать

iddqd
26.12.2018
10:14:29
я этому ещё не научился)

Google
Роман
26.12.2018
10:15:01
Tishka17
26.12.2018
10:15:11
я этому ещё не научился)
ты как приложение запускаешь?

Роман
26.12.2018
10:15:14
У нас просто в основном tcp

Tishka17
26.12.2018
10:15:35
Я Popen имею ввиду
эм, я н епонял зачем тебе popen

iddqd
26.12.2018
10:15:58
ты как приложение запускаешь?
в данный момент пока дописываю, потом залью на сервер и там через supervisor

Tishka17
26.12.2018
10:16:14
он сам собирает логи с stdout и пишет в системный лог

Владимир
26.12.2018
10:16:42
почему заказчики любят писать сверхкрутое техническое тз сами его не понимая?
Твоя задача вытащить из него то, что на самом деле требуется сделать. Формализовать в ТЗ. ТЗ оплачивается отдельно, выполнение по ТЗ отдельно. Модификации в ТЗ — отдельно.

Admin
ERROR: S client not available

iddqd
26.12.2018
10:16:54
Роман
26.12.2018
10:17:33
эм, я н епонял зачем тебе popen
Ну так запускать серваки в тестовых кейсах

Владимир
26.12.2018
10:17:42
не надо супервизор! есть systemd и есть journald у него
а чем супервизор плох, кроме того, что с py3 не дружит?

Tishka17
26.12.2018
10:18:04
а чем супервизор плох, кроме того, что с py3 не дружит?
тем что 2 менеджера сервисов хуже чем один

systemd уже стоит, давайте ещё десяток аналогичных вещей поставим

Ну так запускать серваки в тестовых кейсах
так, они у тебя в проде как запускаются?

Роман
26.12.2018
10:22:46
Tishka17
26.12.2018
10:23:31
ну так и стартуй

а потом запускай тесты

или ты хочешь на каждый тест поднимать?

интеграционные тесты с полным переподнятием всего имхо долго будет

Google
Роман
26.12.2018
10:27:10
Да там небольшие серваки, быстро запускаются

Так более-менее чисто все будет

А бд одна используется

Возможно, её дропать нужно, когда она используется

что это такое?

?? Eugene
26.12.2018
10:35:45
Спам

??
26.12.2018
10:35:48
Спам

Mikhail
26.12.2018
10:35:55
Это спам ?

Mr
26.12.2018
10:35:57
Спам

?
26.12.2018
10:36:57
это не спам, это демонстрация маркетинг трюка

?? Eugene
26.12.2018
10:38:08
@gloomy_philosopher спам

Винни
26.12.2018
10:38:36
@gloomy_philosopher

Muhammadyusuf
26.12.2018
10:38:51
мы этого не хотели значит спам

Tishka17
26.12.2018
10:40:04
Возможно, её дропать нужно, когда она используется
ну вообще для теста в идеале чистую БД поднимать

Роман
26.12.2018
10:43:03
ты инстанс имеешь ввиду?

Tishka17
26.12.2018
10:43:31
схему

но на одном инстансе надо как-то гарантировать что два теста не займут одну схему

мы поднимаем у себя для тестов постгрес на время теста в докере

Jentry
26.12.2018
10:48:16
тест нужно запускать в транзакции и откатывать ее по завершению, в джанге хорошо сделано с save point’ами схему отдельную временную создавать для тестов

Страница 7527 из 9768