image
Часто буває, коли щось не працює. І ніхто не хоче, щоб щось не працювало з його вини. В контексті великих інфраструктур і розподілених додатків помилка конфігурації може бути фатальною.
У статті я покажу як правильно тестувати оточення для програми, які інструменти використовувати, наведу приклади вдалого і доцільного тестування.
Стаття буде цікава командам, які практикують DevOps або SRE, відповідальним Dev, і іншим хорошим людям.

Читати далі →

Де живуть ваші оголошення?

image

Ми відкриваємо техно-блозі компанії Avito. Багато знають бренд, але не так багато тих, хто знає, як сервіс влаштовано з технічної сторони. У своєму блозі ми відкриємо завісу невідомого і розповімо про технічну кухні сервісу.

Почнемо з невеликої історії про те, що проект представляє з себе сьогодні, чим займається команда інженерів і, що ми плануємо робити в найближчому майбутньому. Ще ми зібрали в цьому пості безліч посилань на вже опубліковані матеріали, доповіді і презентації нашої команди, якими давно хотіли поділитися. Хочете знати, де живуть ваші оголошення? Ласкаво просимо під кат!

Читати далі →

Обходимо обмеження в Calabash-Android з UIAutomator

enter image description here
Appium і Calabash — одні з найпопулярніших фреймворків для автоматизації тестування Android-додатків. У кожного, звичайно, є свої переваги і недоліки. Їх основні обмеження:
  • Calabash: може управляти тільки користувальницьким інтерфейсом, який є частиною тестового програми, зокрема, немає підтримки тестування повідомлень;
  • Appium: не може викликати backdoor-методы в додатках зразок Calabash (ці методи дуже корисні для налаштування стану досліджуваного додатки).
Ми в Badoo користувалися Calabash для автоматизації тестування, коли Appium тільки починав розвиватися. Це дуже стабільний інструмент, і він досі працює швидше Appium, так що ми не збираємося мігрувати. Але щоб автоматизувати таке багатофункціональне додаток, як Badoo, нам довелося обійти обмеження Calabash на роботу тільки з інтерфейсом тестового додатку.
Коли ми прийшли до такого рішення. І хоча воно ще працює, його надійність знижується із-за безлічі варіацій пристроїв з різною діагоналлю, різними версіями Android і так далі.
У цій статті я розповім, як ми вирішили проблему з допомогою додавання в Calabash підтримки UIAutomator2. Якщо ви занадто нетерплячі, то скажу по секрету, що в кінці є посилання на готовий до використання Ruby Gem.
Читати далі →

Logeek Night Санкт-Петербург, 16 лютого



Петербург, відмінні новини: 16 лютого чекаємо всіх бажаючих на неформальній зустрічі IT-фахівців Logeek Night!

Що таке Logeek Night? В першу чергу вам треба знати, що Logeek night є безкоштовним заходом від LTS. Це неформальна зустріч IT-фахівців з можливістю поспілкуватися з однодумцями, поділитися досвідом та отримати нові знання.

Читати далі →

Серйозне проектування серйозних сайтів. Частина 2. Візуалізація

Це друга частина статті про проектування великих сайтів. У ній ми розповімо про візуальну частину проектування, про інтерфейси. Якщо ви не читали першу частину, то рекомендую це зробити тут: habrahabr.ru/company/SECL_GROUP/blog/318598

Динамічний прототип


Рис. 9. Демонстрація динамічного прототипу для проекту «Маркетплейс».

На цьому етапі ми переходимо від аналітики до інтерфейсів, до візуальної частини. На основі Mind map необхідно спроектувати інтерфейси для кожної функції і сторінки. Таких інтерфейсів в нас буде багато, від декількох десятків до декількох сотень унікальних прототипів, а ще є розкадровки, коли одна сторінка може мати ряд станів, спливаючих вікон, що випадають блоків і т. д. У процесі всі прототипи об'єднуються в один великий динамічний прототип і зв'язуються між собою.

Читати далі →

Що спільного у мобільного QA і восьминога



Привіт! Я Катя, і я – трудоголік тестувальник самого популярного додатка для нових знайомств.

Отже, ранній ранок, ви – мобільний QA. Ви приходите на роботу, заварюєте міцну каву і хочете взяти пару мобільних пристроїв для тестування нової системи, усвідомлюючи, які муки вибору попереду. Що це за пристрої?

Рано чи пізно кожен мобільний тестувальник задається питанням, на якій кількості пристроїв тестувати новий функціонал, щоб зловити максимальну кількість девайсозависимых багів, витративши мінімум часу. Автотесты ще не написані, перед вами абсолютно нові фічі. І якщо з iOS є хоч якась ясність, і список пристроїв обмежений, то Android «расплодился» цілковитий пекло. Ви здивуєтеся, але для щастя потрібно всього три–чотири Android-пристрої. Я хочу розповісти, як з точки зору досвідченого тестувальника, їх вибрати.

Читати далі →

Як ми вже 4 роки виживаємо в умовах двох релізів в день



Здрастуй, Хабр! Сьогодні я хочу завершити цикл статей про організацію тестування (почався з вивчення помилок і досвіду), розповівши про те, як же все-таки Badoo випускає два якісних серверних релізу кожен день. Крім п'ятниці, коли ми релизимся тільки вранці. Не треба релизиться в п'ятницю ввечері.
Я прийшов до Badoo трохи більше чотирьох років тому. Весь цей час наші процеси та інструменти для тестування невпинно розвивалися і вдосконалювалися. Для чого? Число розробників і тестувальників збільшилася приблизно в два рази — значить, для кожного релізу готується більше завдань. Кількість активних зареєстрованих користувачів і теж подвоїлася — а значить, і ціна будь-якої нашої помилки стала вище. Для того щоб доставляти користувачам максимально якісний продукт, нам потрібні все більш і більш потужні засоби контролю якості, і ця гонка не закінчується ніколи. Мета цієї статті-не тільки продемонструвати працюючий приклад, але й показати, що якими б крутими не були ваші процеси контролю якості, напевно можна зробити їх ще краще. Технічні реалізації деяких інструментів ви зможете знайти за посиланнями на інші статті, про деяких з них нам ще належить написати.

В Badoo існує кілька різних QA-флоу, відмінність яких обґрунтовано різними засобами розробки та цільовими платформами (але ми використовуємо для них загальні системи: JIRA, TeamCity, Git і т. д.), і я вам розкажу про процес тестування і деплоя наших серверних завдань (а заодно і веб-сайту). Його можна умовно розділити на 5 великих етапів (хоча тут, звичайно, багато моїх колег вважають по-різному), кожен з яких включає в себе і ручну, і автоматизовану складову. Постараюся розповісти вам по черзі кожного з них, окремо виділяючи те, що змінювалося і розвивалося в останні роки.

Читати далі →

Одного разу зустрілися JMeter і незнайомка...


Кадр з фільму «Будинок біля озера». Зустріч (www.kinopoisk.ru)

Джим ще не знав, як підійти до неї, з чого почати розмову і на якій мові його вести. Але він бачив багато, володів мовами і мав в рукаві не один козир. І будучи впевненим допомоги вірних друзів (це ми з вами) і забувши про сумніви, йшов на зустріч долі.

Нижче розповідь про те, як Джим завойовував знову і знову серце незнайомій системи. Не подумайте, що незнайомок було кілька. Вона була одна, єдина, але така різна, і від того історії будуть слідувати одна за одною.

Читати далі →

Відео доповідей з Techleads Meetup #1



15-го жовтня в Badoo пройшов пілотний Techleads Meetup. А сьогодні ми викладаємо відео виступів.

Пізнавального Вам перегляду!

Читати далі →

Впровадження Альфа тестування і альфа лабораторії в проектах

У сучасному світі IT ми повинні бути готові адаптувати і покращувати наш процес постачання високоякісного продукту. Тестування є найважливішою і трудомісткою частиною в життєвому циклі розробки. Є багато методик і технік, які дозволяють ефективно виконувати тестування. Але іноді й вони не рятують від негативної реакції замовника. Замовник залишається незадоволеним, дивиться на сторону конкурента.

У моїй практиці є декілька яскравих прикладів. Давайте їх розглянемо.

Читати далі →