31 октября 2017

Напосмотреть: Тестирование: Пред-Heisenbug-овый

Часть докладов пересекается  с темами которые будут на Гейзенбаге.
А часть - нет, но спойлерить ту часть которая будет на Гейзенбаге я не буду. 

1. Ребята из 2GIS о том сколько геморроя можно поиметь при построении инфраструктуры автоматизации тестирования для Adnroid  приложений



2. О том что можно получать СМС-ки для регистрации  аккаунтов на номера Twillio и как заставить Google анализировать его же собственные голосовые сообщения.



3. Про Test Containers от их же создателя

TestContainers – Richard North from Official ZeroTurnaround Account on Vimeo.

4. Даже такое серьезное издание как Guardian не ссыт тестировать в продакшене, а ты ?



5. Обзор инструментов визуального тестирования



26 октября 2017

Напочитать: так тестируют только @#$%исты!

Про то, как тестируют программисты

1. JCunit для комбинаторики и тестирования на основе моделей.
2. Какие типы моков бывают - с примерами для Mockito.
3. Как можно (нужно ли?) комплексно протестировать Spring Boot приложение - подробно и детально тут.
4. Как Facebook ищет баги с помощью генетических  алгоритмов и как к этому прикрутить crowdsourcing.
5. Infer от Facebook живет и они даже про него рассказывают: видео , статья . (maven-плагин для интеграции)
6. как тестируется язык Rust - очень интересно.
7. Как программисты GitHub устраивали back-to-back  тестирование в продакшене.
8. Infer (ныне фейсбуковский) учится находить race conditions.
9. Как протестировать отправку почты с простейшим SMTP сервером и модными TestContainers Arquillian Cube.

26 сентября 2017

Напочитать: JUnit 5


Собственно 10 сентября, после 2-х лет разработки в свет вышел JUnit 5 он же JUnit Lambda.
Если для вас это ничего не значит и Вы не понимаете почему это событие вон из моего дома можете дальше не читать.
А тем, кто остается собственно воть:

1. Выступление Марка Филлипа о том как переехать с JUnit 4 на 5.



Кстати Марку видимо понравилось и он приедет с продолжением темы на Joker.

2. Большая статья  на Хабре про фичи и фишки.
3. Tutorial от Petri Kainulainen по JUnit 5 - тут
4. Параметризация тестов  на JUnit 5  c примерами и картинками - тут.
5. Большая презентация в качестве шпаргалки.
6. Параметризация из JSON
7. Расширение для удобной работы с WireMock
8. Альтернативный движок для тестов - jqwik
9. Слегка уродливое расширение для Selenium на JUnit5.
10. JFairy  для рандомизации тестовых данных.
11. Комплексный пример с JUnit5 и Selenium для проекта на VaadinПояснительная текстовочка на немецком.
12. Тестировать интеграцию с базами тоже можно - Rider.
13. Тестировать логи (логи, епта!) тоже можно. Пример тут для JUnit 4 и 5.
14.  Тестирование самих расширений JUnit5, Guice, интеграция с Mockito - все тут.
15. Перехват out и err потоков через  расширение - тут.
16. Набор extension-ов от разработчков  JUnit5 - JUnit Pioneer.
Мигрируйте!

13 сентября 2017

Полезняшка для тестировщика : пишем видео с телефона

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

У меня эта потребность возникла с несколько неожиданной стороны - проводя собеседования кандидатов мы для оценки того как он умеет тестировать мобильные приложения руками даем ему в руки телефон с нашей приложенькой и смотрим как он по ней будет шариться/тестировать.
Все бы ничего, но команда у нас географически распределенная и довольно часто приходится проводить интервью с кандидатом людям из разных городов, и в такой ситуации посмотреть на то как человек тестирует мобилку руками не представляется возможным.
Точнее не представлялось.

Итак, рецепты.

Рецепт №1, простой.

AZ Screen Recorder -  совершенно замечательная софтина без регистрации и СМС, которая ставится на телефон и позволяет снимать видео с экрана , со звуком (хотя это требуется крайне редко) и делает это хорошо.
Собственно пример видео снятого этой софтиной с моего телефона ниже.




Этого инструмента вполне достаточно чтобы репортить баги, но не достаточно для кейса с собеседованиями. Поэтому идем дальше.

Рецепт №2. Screen Stream Mirroring + YouTube. 

Для этого варианта потребуется, установить Screen Stream Mirroring  и сделать себе левую учетку у Google - можно конечно и не делать , но тогда в ваш личный канальчик на YouTube будет заливаться видео того как вы тестируете - вас это конечно может устраивать, но вот меня нет, я ведь бьютиблоггер. 

Идем под учеткой Google на YouTube, вот сюда https://www.youtube.com/live_dashboard, внизу страницы находим раздел настроек видеокодера.


Жамкаем Показать и вбиваем этот самыйц ключик трансляции в настройках Screen Stream Mirroring для YouTube


Теперь открываем приложеньку на телефоне и в менюшке слева выбираем YouTube.

После чего идем в настройки и настройках  трансляции вводим ключик трансляции который нашли на YouTube.


Собственно для того чтобы начать трансляцию ваших похождений на телефоне в YouTube все готово, но делали ты мы это все для телеприсутствия, и вот тут остался последний шаг - поделиться ссылкой!
А ссылка для живой трансляции всегда будет одна и та же - https://www.youtube.com/user/live.

И только после того как вы остановите трансляцию видео осядет в анналах истории YouTube и будет просто обычным видео на YouTube с которым вы и так знаете что можно делать.

Пример видео сделанного такой связкой инструментов.





19 июля 2017

Напочитать: 13 друзей Оушена


1. LinkedIn продолжает опенсорсить. На этот раз Flashback - mock-инструмент для тестирования. Плохая новость - c https все так же плохо, то есть MITM на который орет хром.
2. Большой список строк для тестирования - тут
3. Что, как, зачем и почему mock-ают и stub-ят девелоперы в своих тестах - рассказывается тут.
4. Заготовочка проекта для написания автотестов под мобилки - тут.
5. Atlassian Clover теперь валяется в open source - мало ль кому будет полезно
6. Apple продолжает стараться делать хоть что-то для тестирования своих приложений, но по прежнему получается так себе - новый релиз TestFligth с новыми фичами.
7. Тестировать процедуры A/B-тестирования - рецепт от HeadHunter.
8. Великий и ужасный Лэсли Лампорт c лекцией про TLA.
9. Лекции от ИСП РАН про тестирование на основе моделей - тут.
10. Newman - это cli для Postman, который позволяет использовать postman в CI.
11. JGoTesting - это когда на Java натянули идеологию тестирования от Go. Стоит скзаать что написал ее Dan North.
12. Если вам когда-нибудь потребуется потестировать SNMP на Java - то говорят, да, это возможно.
13. ArchUnit и Freud - для тех кто не ссыт смотреть в код.

10 июля 2017

Напочитать: Джавайский

КДПВ


1. Hollow от Netflix и YoctoDB от ребят из Яндекса - вестники новых парадигм.
2. Property-Based Testing  c помощью Javaslang - даже лямбды не спасают от такого уровня упоротости.
3. Как упороться блокчейном или пускаем Etherium по Java-e -  раз и два.
4. cfg4j - пусть это хотя бы будет не вашим велосипедом
5. Circuit Breaker но не Hystrix  - resilience4j и его младший брат - failsafe
6. Reladomo или почему Goldman Sachs упоролся своим ORM
7. Звонить из java-приложеньки - можно, тут рассказывают как.
8. Это пожалуй первая статья где нормальным языком рассказано про GraphQL, а вот тут еще и видео  можно посмотреть .
9. Atlassian  про то как расширять гит , но ссылки в конце статьи интересней.
10. Peter Lawrey про паттерны взаимодействия микросервисов - красочно, чо.
11. Стандартный грабли при запуске Java-приложенек в Docker перечислены тут.
12. Макаруны - это не только сладкие ништяки из миндального теста, но волшебные токены из  недр Гугла. Смотреть тут, читать тут.

27 апреля 2017

Напосмотреть: Продуктовые грезы

Про продуктовую разработку, культуру и жизнь в продуктовых компаниях.



1. Олег Щеголев про то как живет внутри SEMrush



2. Болезненная тема - быстрый рост компании и как меняются процессы - бесценный опыт от CarPrice



3. Обратный пример - маленькая компания которая живет монопродуктом на очень сложном рынке и со своей спецификой.




4. Максим Дорофеев про буферы и планирование.


А если хочется окунуться в эту тему поглубже то вам сюда

13 апреля 2017

Напосмотреть: Подрывные инновации






Этот выпуск копился очень долго.
Просматривая разные видео с конференций попадаются интересные, но по тематике не подходящие ни в одну категорию.
Этот выпуск из них.


1. Энтони Голдблум о том как машины отнимут нашу работу



2. Теория заговора, мировое массонское правительство и прочая конспирология меркнут в сравнении с взаимной интеграцией корпораций и хрупкостью этой системы в целом. Тему раскрывает Джейм Глаттерфельд.



3. О том что нас ждет в эру посткапитализма и причем тут open source рассказывает Джейми Добсон



4. О том что такое Dark Design Patterns я узнал года три назал, но вот тут вот есть шикарная подборка.



5. Совершенно восхитительное выступление на тему Clean Disruption - если этот парень прав хотя бы на половину, то мы будем жить в очень интересное время.

30 марта 2017

Книга: Debfriefing Facilitation Guide by Etsy


"Технологии - нормальные, это люди - мудаки»

Б.Садогурский, Разбор Полетов


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

Эти самые ретроспективы, after-action review и как бы они еще не назывались (имя им Легион) постепенно врастают в культуру, и некоторые организации начинают пристально смотреть на то, что вросло в их культуру.

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

Это случается потому, что нормальный, здоровый процесс разбора полетов на методичной и регулярной основе убирает причины инцидентов обусловленные техникой и технологией.

Остаются только люди и процессы взаимодействия между этими людьми.
Собственно, регулярно слышать на разборах инцидентов формулировку «человеческий фактор» надоедает и вот в Etsy решили что-то начать с этим делать. 

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

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

Научится делать эти самые дебрифинги по книжке вы вряд ли сможете, но сможете посмотреть на то как выглядит довольно самобытная практика фасилитации в большой организации
Вообще тема человеческого фактора и человеческой ошибки исследована чуть менее чем нихера и пожалуй  одним из пионеров в этой области и является Сидни Деккер, кучей ссылок на книги которого пестрит миникнига (в частности https:// www.youtube.com/watch?v=PVWjgqDANWA).  

И что в итоге, спросите вы ? Выхода нет, все тлен и безысходность? 
Нет, не совсем так. 
Просто процитирую кусок из книги 

Most traditional accident investigations tend to focus on discovering things around an event that never actually happened. In an attempt to prevent future accidents, there is an underlying assumption (Shorrock, 2014) for this somewhat peculiar emphasis, which is:

Someone did not do something they should have, according to someone else.

Through this lens, what generally surfaces in investigations are “findings” about what people did not do (pay attention, make the right decision, etc.) rather than what they actually did. Without anyone really noticing, these items get labeled as “human error” and through a seductive and convenient contortion of logic, an event that never actually happened is deemed after the fact as the “cause” of the accident. Perhaps unsurprisingly, this results in an obvious recommendation for the future:

“Next time, do what you should.”

Unfortunately, this approach does not result in the safer and improved future we want.

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

21 марта 2017

Напосмотреть : HR : Кризис (пере)оценки


Асхат Уразбаев про то как измерять эффективность IT-специалистов


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



В продолжение темы оценки и ревью - опыт коллег из Badoo про внедрение процесса оценки



Пара коротких видео-шпаргалок от Crisp:
 про размеры команд и процессы с этим связанные


про ловушку утилизации ресурсов



Отличный доклад с иллюстрацией когнитивных искажений в организациях



Оценивайте своих коллег по заслугам