Очевидно, каждая компания, вверяющая результаты своей деятельности программному продукту, в какой-то момент приходит к мысли: так ли безупречно работает алгоритм?
В самом деле: со временем вариативность вычислений возрастает, появляются новые параметры, операторы заводят множество данных, но правильные ли числа получаются на выходе? А ведь иногда речь идёт ещё и о расчёте выплат, то есть ошибка может приводить к реальным финансовым потерям. Как удостовериться в том, что потерь удастся избежать?
Не удивительно, что в одной крупной страховой компании однажды возник вопрос: безупречно ли функционирует их система расчёта КАСКО? За ответом на этот вопрос они обратились к нам. Была поставлена задача: протестировать систему расчёта стоимости страховки, сделав упор в первую очередь на корректность расчетов. Мы имели предоставленные компанией подробнейшие системы принятого расчёта, составлявшие около 30 итоговых коэффициентов для 39 регионов (именно таков был размах этой страховой) и 39 больших файлов.
В рамках онлайн-конференции для тестировщиков и тест-менеджеров TEST Labs 2016 наши коллеги говорили о последних трендах в области обеспечения качества и управления тестированием, а также рассказывали об опыте освоения новых программ и инструментов. Ниже вы найдете видео докладов, где:
1. Юрий Слива поделился основными понятиями и принципами работы Data Warehouse.
2. Григорий Сенин рассказал о «лучших практиках» тестирования, чем они хороши, что плохого в их несоблюдении и когда можно ими пренебречь.
3. Ольга Пронина поведала об опыте работы команды, оказавшейся в ситуации информационного вакуума.
«Это должно быть сделано еще вчера», «Протестируйте как-нибудь быстренько», «Время от начала разработки до выкладки на продакшн должно быть минимальным, а если возможно — еще меньше» — наверное, многим знакомы подобные цитаты. И покуда мы (тестировщики) — одно из последних звеньев в цепочке разработки, именно нам чаще всего приходится балансировать между скоростью выхода фич и их качеством.
В данной статье хочу поделиться тем, как мы в нашей компании применяем успешные практики из Lean Startup (несмотря на то, что многие наши проекты вполне сформировались и устоялись), с какими проблемами сталкиваются тестировщики при использовании данной методологии и как мы с этими трудностями справляемся.
Пара слов о себе: я тестировщик, имела опыт работы в проектах разного масштаба, была единственным тестировщиком на проекте и работала в командах, в которых использовались разные подходы и методологии. По моему опыту, работать по Lean Startup — это круто, но тут есть и подводные камни для тестирования, о которых неплохо знать заранее.
Для начала стоит немного рассказать о том, чем занимается наша компания. Туту.ру — сервис по онлайн-покупке ж/д, авиа- и автобусных билетов, туров и других вещей, связанных с путешествиями. Один из наших проектов — "Туры" — еще в стадии активного развития, он очень динамичен, функциональность быстро меняется. Наши PO (продукт-оунеры) практикуют Lean Startup, и в частности мы проводим очень много экспериментов.
Тестирование – это очень широкая область. У вас не будет свода правил насчет того, как именно должна тестироваться определенная система. Однако вы всегда можете выявить какие-то способы и уловки, которые в большинстве случаев, если не всегда, сработают. Все они приведут к тому, что вы будете лучше знать тестируемую систему, а это жизненно важно в тестировании. Порядок нижеследующих советов – это порядок, в котором вы должны действовать, чтобы лучше познакомиться с ПО.
Покопайтесь в нем
Это самый важный совет. Начиная тестировать, НЕ ищите спецификации и требования. Все, что вам нужно знать –это базовую идею о том, что система предположительно должна уметь делать. Как она это делает, мы сейчас выясним.
Это дает вам возможность посмотреть на систему глазами нового пользователя. Суть совета в том, что большинство пользователей смотрят в инструкцию, как чем-то пользоваться, только если не могут разобраться самостоятельно. Если пользователю трудно разобраться в вашей системе, обратите внимание на ее удобство использования.
На этом шаге вы должны выяснить многое о том, как система работает, какова ее основная функциональность, и каким образом можно с этой функциональностью общаться.
Во время тестирования веб-приложения нужно обращать внимание на нижеперечисленные пункты. Этот чеклист применим практически к любому типу веб-приложений в зависимости от бизнес-требований.
Чек-лист для тестирования веб-приложений состоит из:
Тестирования удобства использования.
Функционального тестирования.
Тестирования совместимости.
Тестирования баз данных.
Тестирования безопасности.
Тестирования производительности.
Теперь давайте рассмотрим каждый пункт по отдельности.
Исследовательское тестирование — термин, применяемый в противопоставление сценарному подходу к тестированию. Думаю, нет нужды говорить, насколько потрясающих результатов можно достичь, совмещая оба этих подхода, но чаще всего у нас просто не хватает времени на развернутый анализ и полноценное проектирование тестов.
Именно поэтому наиболее удачным решением может оказаться выбор исследовательского тестирования в моно-варианте. Поскольку сам термин «исследование» подразумевает индивидуальную заинтересованность и вовлеченность в процесс, мы все сразу же задумываемся о подводных камнях данного подхода.
Конечно, говоря о тестировании, нельзя не упомянуть распространенные ошибки самих тестировщиков. Есть такой психологический момент: если не обозначены рамки, то начинает казаться, что можно делать всё, что угодно. И этот процесс будет называться тестированием. Многие начинающие тестировщики совершенно необоснованно думают, что «исследовательское» тестирование позволяет не соблюдать основные принципы тестирования.
Для выступления на конференции COMAQA Birthday 2016, посвященной двухлетию сообщества, были отобраны доклады на самые актуальные темы тестирования: об опыте применения автоматизации и последних тенденциях в этой области, тестировании мобильных приложений, тестировании требований и об использовании пирамиды тестирования Коэна через призму калькулятора ROI.
Если вам не удалось лично присутствовать на мероприятии или посмотреть прямую трансляцию, вам будет интересно узнать, как все проходило. Ниже записи докладов, прозвучавших на конференции:
Марта Веренчикова: Автоматизация Canvas: сложно, но возможно
Роман Сорока: ScreenPlay Design Patterns for QA Automation
Вадим Зубович: Как находить ненаходимое: возможности CSS и XPATH локаторов
Владислав Романенко: Эвристики, мнемоники и другие греческие слова в исследовательском тестировании мобильных приложений
Никита Сысков: Работа с бизнес-требованиями на стадии выхода продукта
Антон Семенченко: Пирамида Тестирования через призму ROI калькулятора и прочая геометрия
Наши партнеры и коллеги, Слава Панкратов и Александр Орлов (Стратоплан), на этой неделе устраивают Большую Распродажу всех материалов Школы менеджеров, потому что Годовой программы Школы менеджеров в таком формате, как она существовала до сих пор, больше не будет.
В распродажу входят записи 22 курсов, 3 конференций, 3 справочников. В штуках это 435 видео, суммарно на 368 часов (приблизительно) контента об управлении людьми / проектами, ведении переговоров, о переходе в позицию менеджера начального и среднего уровней плюс дополнительные материалы на другие полезные темы.
Стоимость оригинальных материалов сложно подсчитать, поскольку это архив курсов за несколько лет работы и некоторые программы больше не проводятся, тем не менее каждый из них стоил от $180 до $700 за курс.
В рамках Ликвидации Склада 2017 все материалы продаются за $350 / 19 980 руб. / 9 540 грн.
Последний раз подобное мероприятие проводилось в 2013 году. Кто упустил возможность в тот раз, сейчас могут наверстать упущенное и получить гораздо больше.
Предложение действует до пятницы, 10 марта 18.00 MSK.
Тестирование клиент-серверных мобильных приложений - пожалуй, одна из наиболее сложных задач в отрасли. К проблемам фрагментации девайсов и ОС добавляются проблемы со связью и возможные баги на самом сервере. В таких условиях нужно тестировать каждую из областей изолировано, чтобы проблемы с приложением не мешали и не замедляли проверку клиент-серверного протокола. Поэтому тестировщикам часто необходимо перехватывать запросы от приложения к серверу, а зачастую и подменять их. Для этого стоит научиться пользоваться инструментами перехвата трафика.
В качестве такого инструмента отлично подходит Charles Proxy Server, который создаёт на машине тестировщика прокси, через который можно пускать запросы, в том числе и от смартфона. Проще всего его использовать, конечно, с эмулятором, однако это возможно далеко не всегда. Поэтому мы сделали небольшой обучающий ролик, в котором показано, как настроить работу прокси с минимальными усилиями.
Этот ролик является частью курса "Тестирование мобильных приложений", следующая группа которого стартует уже через неделю. Если вас заинтересовал этот тренинг - можете почитать отзывы или записаться на участие. Больше роликов, посвящённых тестированию мобильных приложений, вы можете увидеть на канале в Youtube