Pull to refresh
2
0
Кинзерский Вячеслав @VyacheslavKinzerskiy

Системный администратор

Send message

Непрерывное тестирование питонопроекта

Reading time7 min
Views24K
Программист зверь ленивый, поэтому всё, что будет делаться больше одного раза надо непременно заскриптовать.

Я уже некоторое время ковыряю TDD и задача постоянного контроля качества для меня становится всё актуальней. Особенно при пополнении команды новыми разработчиками.

Сначала я запускал тесты руками: save, switch, $ nosetests. Потом к тестам добавились проверялки качества кода и пришлось всё засунуть в скрипт:
pyflakes *.py
pep8 *.py
pylint *.py
nosetests


Скрипт запускать каждый раз ужасно лениво, поэтому небольшая оболочка на inotifywait стала запускать тесты и проверки после каждого сохранения:
while true; do
inotifywait -e modify project/*.py -qq; clear
./do_tests
done


Тут я стал более-менее доволен происходящим и даже на некоторое время расслабился. Но ведь программист кроме того, что ленив ещё и горд, поэтому результаты хочется кому-нибудь показать. Чтобы вести историю происходящего (которая очень помогает когда заходит начальник начальника и спрашивает: «ну-с, чем вы занимались последний месяц?») уже есть система контроля версий. Но она показывает только, что сделано и не даёт обзора успешности каждой ревизии. Получается что код лежит, но непонятно в каком он состоянии и что где ещё надо сделать.

Кроме того довольно тяжело следить за коллегами, которые тоже могут что-то сделать и забыть прогнать тесты, в результате в репозитории лежит битый код, не прошедший code review и при очередном pull может внезапно начаться clusterfuck.

И тут очень вовремя kmmbvnr@lj выпустил скринкаст, в котором он демонстрировал интеграцию тестирования для django-проектов с сабжем Jenkins (бывш. Hudson). Посмотрел я на все эти красоты, графики и отчёты и тоже захотел чтобы всё само пело и играло. Но у него django-jenkins, как и следует из названия, встраивается в джангу и генерит отчёты используя хитрую систему. Мой проект до джанги не дорос и скорее всего не дорастёт — это достаточно тривиальное WSGI-приложение, которое правда стремительно разрастается. Пришлось поднимать всё с нуля.

Воскресенье я на это убил, но в целом всё довольно прямолинейно и теперь у меня есть симпатичные отчёты:



Что внутри?
Читать дальше →
Total votes 61: ↑56 and ↓5+51
Comments20

Новые критические уязвимости в Android: В чем проблема, и как защититься

Reading time4 min
Views53K


Исследователи информационной безопасности обнаружили ряд серьезных уязвимостей в одном из компонентов ядра мобильной ОС Android под названием Stagefright (библиотека для работы с файлами мультимедиа, например PDF). Первым о проблемах в компоненте Stagefright заявил исследователь из компании Zimperium Labs Джошуа Дрейк (Joshua J. Drake). Кроме того, об обнаружении серьезной уязвимости в Android заявила компания TrendMicro.
Читать дальше →
Total votes 28: ↑24 and ↓4+20
Comments27

Как создавать и зарабатывать на SaaS (Часть 11 / Обзоры облачных сервисов / UX и юзабилити тестирование) 

Reading time5 min
Views15K
За последние полгода мной написаны 10 статей по проблематики SaaS — все получились относительно читаемыми и интересными, но все темы исчерпаны и есть желание не стоять на месте и «быть в теме». Я долго думал, чтобы еще могло быть интересным по тематике и просто решил писать про облачные сервисы — относительно новые сервисы, созданные в парадигме SaaS. Еще один важный критерий для будущих статей — сервисы, о которых я планирую рассказывать, ни как не ангажируются мной — я их нахожу, они мне интересны, я их использую или планирую использовать в работе и я объективно пишу об их плюсах и недостатках.

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

В общем, рамок сам себе наставил и начну и раздам сегодня звезды ребятам, решившим проблему дистанционного тестирования в разработке интерфейсов, cайтов и контента создав сервис Фабрика Юзабилити www.fabuza.ru. Хочу предупредить изысканных читателей уважаемого ресурса, настроенных против прямой рекламы, что все сервисы, о которых планирую писать использую или пробую для себя.

image

Читать дальше →
Total votes 23: ↑14 and ↓9+5
Comments1

Information

Rating
Does not participate
Location
Хабаровск, Хабаровский край, Россия
Date of birth
Registered
Activity