Как стать автором
Обновить
4
0
Отправить сообщение

Алгоритм построения покрывающих наборов

Время на прочтение7 мин
Количество просмотров17K
Откровенно говоря, ранее я ни разу не занимался в серьезной мере методами тестирования программного обеспечения. Однако, понимаю, что для полной уверенности в том, что программа будет работать, нужно перепробовать всевозможные варианты её использования. Также очевиден для меня и тот факт, что сделать это не всегда возможно. Если имеются конкретные варианты использования, но невозможно проверить их всех в силу их количества, стараются построить набор, который покроет все самые используемые варианты. Но что делать, если использование всех вариантов равновероятно? Как за минимальное число времени обнаружить все ошибки, на которые есть большая вероятность наткнуться? Данная задача действительно известна, и с ней нередко сталкиваются, ну хотя бы, в Яндексе.

Чтобы стало понятно о чем идет речь, представим, что нам необходимо протестировать какую-либо программу или сайт. Очень хорош пример с тестированием веб-формы, скажем, для регистрации или для поиска. Возникает вопрос, с какими ошибками в ней скорее всего встретится пользователь? Пускай у нас в форме имеется 6 вопросов, для каждого из которых возможны 10 вариантов ответа. Допустим, на страницу зашел целый миллион пользователей, и каждый из них ответил уникально. Теперь представим, что в форме для заполнения ответами скрывается ошибка. Если ошибка обнаруживается только при определенной комбинации ответов на все 6 вопросов, то на неё наткнется лишь один человек. Если же ошибка вылетает при наборе определенных ответов на какие-то 3 вопроса, то количество людей, обнаруживших ошибку возрастет до тысячи. Очевидно, что чем меньше элементов в комбинации, требуемой для ошибки, тем больше людей с ней встретится. Соответственно, перед нами теперь стоит задача: если мы не можем обнаружить все ошибки, то давайте хотя бы найдем самые критичные, то есть те, на которые наткнется больше всего пользователей.
Таким образом, мы должны сформировать тест-кейсы (и чем меньше, тем лучше), при переборе которых мы наткнемся на самые легкодоступные ошибки. Допустим, у нас имеется множество вопросов A, которое мы задаем количеством вариантов ответа на каждый из них: А = {2, 3, 5, 2, ...}. Пусть n — количество вопросов, а 1≤m≤n — степень критичности ошибок, она же степень покрытия или глубина покрывающего набора. Чем меньше значение m, тем критичнее ошибка. Задавая степень покрытия мы строим тестовый набор, который позволит обнаружить все ошибки, степень критичности которых меньше данного m. Если m = n, то поиск ошибок сводится к перебору всех вариантов. Чем меньше задаем степень, тем меньше тест-кейсов будет сформировано и тем меньше ошибок мы найдем.
Как составить покрытие?
Всего голосов 15: ↑14 и ↓1+13
Комментарии6

Как заговорить на английском через месяц. 9 простых и проверенных шагов

Время на прочтение8 мин
Количество просмотров390K
Хабр, привет!

Меня зовут Марина Могилко, я кофаундер онлайн-платформы LinguaTrip.com.

Мы с командой помогаем людям выучить язык и поступить в зарубежный университет. Я знаю, что за месяц английский не выучишь, но иногда бывают ситуации, когда надо срочно подтянуть язык — предстоит поездка за рубеж или намечается работа в англоязычном проекте. А возможно, просто нет больше сил учить язык и хочется уже начать на нём разговаривать. Для таких случаев мы подобрали простые шаги, которые доступны любому работающему человеку с часом свободного времени в день.

Все советы рассчитаны на тех, кто уже обладает минимальным уровнем английского — учил его в школе или на курсах. Но заговорить через месяц смогут и те, кто только знакомится с языком, правда, им будет труднее. В статье не будет рекомендаций типа «учите язык вместе с носителем языка» или «погрузитесь в языковую среду». Это действенные методы, но они не всегда подходят.

Итак, начинаем! Осторожно: под катом мини-словарик на все случаи жизни.

image
Всего голосов 99: ↑64 и ↓35+29
Комментарии184

TeamLead — наше все: самые популярные доклады с HighLoad++ 2017. Часть 1

Время на прочтение6 мин
Количество просмотров22K
На HighLoad++ 2017 было много интересных докладов, посвященных практически всем аспектам пути тимлида — от поиска того самого человека среди обычных разработчиков и до деталей работы и последующего движения к руководителю более высокого уровня вплоть до CTO.

Для этого обзора мы выбрали восемь наиболее популярных выступлений.


Всего голосов 34: ↑31 и ↓3+28
Комментарии2

Непрерывная интеграция и развертывание Docker в GitLab CI

Время на прочтение20 мин
Количество просмотров72K
В этом руководстве рассмотрим вариант настройки непрерывной интеграции и развертывания Flask приложения на Docker Swarm через GitLab CI.

Сначала мы рассмотрим настройку рабочей среды, включая создание серверов для нодов Docker Swarm. Затем создадим простое приложение Flask с Redis и подготовим GitLab CI для непрерывной доставки.
Читать дальше →
Всего голосов 23: ↑22 и ↓1+21
Комментарии7

Защищаем мобильное приложение с помощью «КриптоПро»: пошаговая инструкция

Время на прочтение12 мин
Количество просмотров15K
Статья описывает работу с одним из крупнейших российских поставщиков средств криптографической защиты информации и электронной цифровой подписи — компанией «КриптоПро», занимающей лидирующие позиции в России. Рассмотрено импортирование фреймворка для iOS и подводные камни при импортировании, его использование для создания и проверки электронных цифровых подписей, а также авторизации с использованием приватного ключа.

Читать дальше →
Всего голосов 20: ↑12 и ↓8+4
Комментарии16

Кому из айтишников на Руси жить хорошо (а кому будет еще лучше)

Время на прочтение11 мин
Количество просмотров34K
Похоже, сегодня ИТ-специалисту в России стало легче найти работу. Последние впечатления от российского рынка труда: предложения с уровнем зарплаты существенно выше среднего получают специалисты самых разных профилей и не обязательно высокой квалификации. Более того, похоже, что в кои-то веки ИТ-профессионалы получили возможность выбирать из конкурентных предложений! Кандидаты без специального образования и довольно посредственно, на уровне любителя, разбирающиеся в профильных технологиях, с гордостью публикуют в соцсетях свои новые должности — разработчиков, специалистов по технической поддержке, внедренцев…

К тому же, в прессе все чаще появляются истории о низкоквалифицированных разработчиках, которые тем не менее успешно проходили интервью, и уже в ходе работы наносили огромной финансовый ущерб компании. Так, Uber в 2015 случайно опубликовал паспортные данные своих водителей, а Google в 2010 году понес убытки в $100 млн долларов и проиграл суд компании Oracle за использование без разрешения 11 строк кода. И уже не из жизни гигантов: когда работодатель не понимает, что делает разработчик, а сам сотрудник пользуется этим и завышает как сложность своей работы, так и ее стоимость, а впоследствии и пренебрегает добросовестностью исполнения служебных заданий.

Наш интерес к этим вещам далеко не праздный, ведь для агентства AGIMA ИТ-профессионалы — главный производственный актив. Поэтому HR-отдел агентства попросил наших аналитиков отложить в сторону Google Analytics, сплит-тестирования, карточные сортировки и разобраться в этих вопросах. В ходе эксперимента ни один аналитик и текущий проект компании не пострадали.
Читать дальше →
Всего голосов 42: ↑31 и ↓11+20
Комментарии57

Найм тестировщиков — по обе стороны баррикад

Время на прочтение9 мин
Количество просмотров23K
Как нанять тестировщика, если вы — разработчик приложений? Как получить достойную работу, если вы — тестировщик? Сегодня обсуждаем рынок тестирования — зарплаты, вакансии, собеседования, соискателей… И конечно — есть ли жизнь после найма на работу и сколько она продолжается. Сформулировать задачу найма специалистов проще простого — работодателю надо найти достойных кандидатов, а претенденту —лучшее место работы. Почему же на практике это так сложно?

Читать дальше →
Всего голосов 11: ↑9 и ↓2+7
Комментарии18

Эволюция проектирования с приходом адаптивного дизайна

Время на прочтение10 мин
Количество просмотров31K
Хабр, привет!

Прошло около двух лет с момента запуска первого адаптивного сайта нашей компанией, примерно столько же этому вопросу в России вообще. С этого момента мне, как проектировщику, уже удалось пройтись по многим граблям, поэтому в первом своем посте хотел бы поделиться мыслями, что поменялось у нас в процессах проектирования сайтов вместе с приходом адаптива.
Читать дальше →
Всего голосов 51: ↑47 и ↓4+43
Комментарии13

Как управлять гигантами: правила формирования команды и построения процессов в веб-разработке

Время на прочтение10 мин
Количество просмотров18K
В России больше 5000 компаний занимаются заказной веб-разработкой (по данным аналитического агентства Тэглайн), однако, по моему мнению, наш рынок до сих пор находится в стадии своего зарождения. Многие digital-компании, веб-студии и интеграторы в реальности не готовы к качественному развитию и поддержке действительно крупных проектов. К нам в AGIMA часто обращаются компании, недовольные качеством выполнения работ своим текущим подрядчиком, которого они выбрали на тендере. За много лет работы с крупнейшими российскими компаниями у нас накопился огромный опыт в организации процессов разработки и развития крупных интернет-проектов, и я хочу им поделиться. В этой статье я расскажу, как правильно организовать инфраструктуру, выстроить коммуникации между командами и не забыть о важных составляющих агентского сервиса при работе с «гигантами».

image

Читать дальше →
Всего голосов 8: ↑8 и ↓0+8
Комментарии14

Как управлять гигантами Vol.2: инструментарий для планирования разработки интернет-проектов

Время на прочтение9 мин
Количество просмотров16K
image

В предыдущей статье мы внимательно рассмотрели детали организации процессов и построения команды для реализации сложных веб-проектов. Но как контролировать соблюдение процессов и планировать время специалистов? Теоретически можно обойтись блокнотом и ручкой, но это усиливает влияние человеческого фактора, а, значит, появляются дополнительные риски. Для минимизации этих рисков, повышения эффективности и удобства планирования существует множество инструментов. За 10 лет работы AGIMA мы перепробовали великое множество софта для проектного управления, и в этой статье я расскажу об инструментах, которые прошли наш самый суровый отбор и которые наши менеджеры используют ежедневно.

Читать дальше →
Всего голосов 14: ↑10 и ↓4+6
Комментарии7

Как управлять гигантами Vol.3: полный цикл жизни проекта

Время на прочтение8 мин
Количество просмотров8.4K
image

Мы уже писали, как сформировать команду и с помощью каких инструментов контролировать соблюдение процессов. Но что еще важно учитывать на всех этапах жизни проекта?

Читать дальше →
Всего голосов 11: ↑10 и ↓1+9
Комментарии0

Data-driven подход к продакшну / Фильтры по акциям

Время на прочтение6 мин
Количество просмотров3.3K
data analysis

Что вас ждет в статье:
Описание подхода, который мы применили для исследования фильтров на сайте одного из наших клиентов, а также детальное описание технологий.

На кого рассчитана статья:
Статья будет интересна веб-аналитикам и всем, кто сталкивается с задачами исследования пользовательского опыта на основе количественных данных.

Дисклеймер:
Все описанное в статье является лишь мнением автора (Артем Кулбасов, веб-аналитик AGIMA) и не является единственно верным решением задачи. Многие описанные в статье технологии могут быть заменены аналогами.

Читать дальше →
Всего голосов 19: ↑13 и ↓6+7
Комментарии2

Обзор зарплат тестировщиков или стоит ли работать за еду?

Время на прочтение9 мин
Количество просмотров48K
В материальном мире правят материальные ценности. И как бы мы не прятали наши зарплатные ожидания под правильными формулировками о важности коллектива, интересности задач и возможности самореализации, но именно строку о возможном доходе мы первым делом ищем в описании вакансии. При этом мы зачастую сами склонны ждать большего, непременно разочаровываясь при получении «дешевых» офферов или не находя предложений с желаемым уровнем заработной платы.


Читать дальше →
Всего голосов 12: ↑7 и ↓5+2
Комментарии27

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирована
Активность