В конце сентября я публиковал в этом блоге статью «Неизбежность, незаменимость и туманные перспективы пилотируемой космонавтики». Эта статья продолжала темы, также затронутые в переводе моего коллеги @SLY_G «Как учёные снижают пагубное влияние космических полётов на организм человека» и вызывала крайне интересную дискуссию из 96 комментариев с участием 34 человек, из которых я бы особенно отметил вклад @alexEtse @Valerij56 @johnfound и @Javian. Поэтому я решил подробнее рассмотреть тему генной модификации человека, которая могла бы приспособить его к длительным космическим полётам. Следовательно, появился бы способ закладывать профессию и судьбу человека уже в период эмбриогенеза. Судя по всему, за пределами магнитосферы наиболее смертоносным препятствием, осложняющим длительные космические экспедиции, является жёсткое космическое излучение. Чтобы купировать его влияние, можно было бы попробовать внедрять человеку некоторые гены тихоходок, в частности, кодирующие специфический тихоходский белок Dsup (damage suppressor, «подавитель ущерба»). Об удивительных продолжениях и перспективах таких исследований — под катом.
Пользователь
Selenium. Автоматизация тестирования календаря (Datepicker)
В IT-сообществе давно утихли споры о важности тестирования программного обеспечения. Каждый участник процесса разработки понимает, что сбои программы или сайта, могут навести серьезный ущерб бизнесу, репутации компании или даже обществу. Возрастают требования к качеству выпускаемого продукта для IT- компаний, но прогресс не снижает скорости. Требования бизнеса к скорости разработки IT-продуктов растут по экспоненте.
Ответом IT-сообщества, было появлению множества инструментов для тестирования PHPUnit, Selenium, Pytest, Unittest, AssertJ. Инструменты позволили сосредоточить на том что тестируем и минимальными затратами на разработку теста. Развитие области автоматического тестирования, тестовые кейсы можно описать в виде небольших скриптов, с помощью тестовых фреймворков. Такие тесты, разработчики могут запускать в любой момент своей работы, чтобы поддерживать качество продукта. Для автоматизации тестирования веб-приложений применяется Selenium и его производные.
Selenium - это проект с открытым исходным кодом. Проект является “зонтичный” - собирательным, потому что в его состав входят множество независимых компонентов Selenium WebDriver, Selenium Grid, Selenium Server, Selenium IDE и т.д. Но в сообществе, когда говорят “Selenium”, часто подразумевают Selenium WebDriver.
Автотесты применяются на различных уровнях ПО. Автотестами можно проверить работу функции, модуля программы или набора модулей. Для систематизации понятий тестов, Майк Кон придумал абстракцию, которая группирует тесты по уровню детализации и назначению. Назвал ее пирамидой тестирования и описал в книге «Scrum: гибкая разработка ПО». С Selenium WebDriver специалист, может разрабатывать end-to-end тесты - которые находятся на вершине пирамиды тестирования. End-to-end тесты - проверяют полную работу системы и имитируют действия пользователя. Но как сделать такой автотест для веб приложения?
Как мы сделали grpc-wiremock: сервис, создающий мок-сервер для ваших контрактов в одну команду
Всем привет, меня зовут Никита, уже пару лет я зарабатываю на жизнь развитием платформы-как-сервис в СберМаркет. В основном отвечаю за инструменты локальной разработки. Являюсь одним из создателей cli, которая позволяет развернуть сервис со всеми его зависимостями в одну команду sbm-cli service up
.
Хочу рассказать, как мы делаем тестирование на моках в PaaS. И поделиться нашим опенсорс-решением на базе Wiremock.
Шпаргалка по техникам тест дизайна
Добро пожаловать!
Ежедневной задачей инженера по контролю качества (QA Engineer) является создание тест-кейсов для проверки требований продукта. В этой статье я собрал для вас техники проектирования тестов, которые помогут оптимизировать ваш набор тестов.
О чём могут рассказать логи: важный инструмент в работе тестировщика
Привет, Хабр! Меня зовут Анфиса Одинцова, я — наставница в Яндекс Практикуме на курсе «Инженер по тестированию». Сейчас работаю в JoomPay, а раньше — в Яндекс Дзен и ВК. В этой статье расскажу о важном аспекте тестирования — работе с логами. Ведь в мире разработки программного обеспечения логирование играет ключевую роль в обеспечении качества и отладке приложений. Для тестировщиков логи — ценный инструмент, который помогает нам понять работу приложения, обнаружить потенциальные проблемы и сделать наше тестирование более эффективным.
Мы рассмотрим, зачем в работе могут понадобиться логи, какие виды логирования существуют и что внутри лога может быть нам полезным.
Книга «Аппаратный хакинг: взлом реальных вещей»
Встроенные системы трудно атаковать. Различных конструкций плат, процессоров и операционных систем слишком много, и это затрудняет их реверс-инжиниринг. Но теперь все станет проще — вас обучат два ведущих мировых эксперта по взлому аппаратного обеспечения. Пройдите ускоренный курс по архитектуре и безопасности встроенных устройств, узнайте об электрических сигналах, анализе образов прошивок и многом другом. Авторы объединяют теорию с практическими инструкциями, которые вы можете применить на реальном железе. Книга завершается описанием атак на такие устройства, как Sony PlayStation 3, Xbox 360 и лампы Philips Hue. В приложении приведен список всего оборудования, которое понадобится вам для домашней лаборатории, независимо от того, планируете ли вы модифицировать печатную плату или собирать и анализировать графики потребляемой мощности.
Мы не ждем, что у вас дома найдется лазерное оборудование, ускорители частиц или другие вещи, которые любителю не по карману. А если такое оборудование у вас есть, например в лаборатории вашего университета, то книга станет еще полезнее. Что касается целевых встроенных устройств, то мы предполагаем, что у вас есть физический доступ к ним и что вам интересно с ними поэкспериментировать. И самое главное: мы предполагаем, что вам нравится изучать новые методы, вы мыслите в рамках обратного проектирования и готовы к глубокому погружению в тему!
Основы тестирования Go: простые тесты, testify и визуализация покрытия
Привет Хабр!
Иногда мне приходится расширять функционал наших платформ по запросам разработчиков и в для этого мне отлично подошел Go. Однако нужно не только уметь писать на языке, но и уметь его тестировать. Как вы поняли, сегодня я хотел бы рассказать про основы тестирования в Go.
Тестирование — это первостепенная задача в Go. Пакет тестирования предоставляет API для написания тестового кода. Опишу упражнение, в котором мы реализуем и выполним базовые тестовые случаи с помощью стандартного пакета тестирования. Выполним их с помощью набора инструментов Go.
Как я использовал Pytest для написания тестов, гарантированно обходящих двухфакторную аутентификацию
Тестирование страниц входа и согласия может быть довольно сложным: та же самая двухфакторная аутентификация (2FA), которая обеспечивает безопасность ваших клиентов, также затрудняет написание автоматизированных тестов. В этой статье я расскажу, как написал Python-тесты, которые обходят 2FA и при этом не покушаются на безопасность клиентов. Для этого я использовал Selenium и разработал Slackbot.
5 трудностей в работе junior тестировщика
Трудности на работе для junior тестировщиков и как с ними справиться. Я расскажу о 5 из них и поделюсь советами о том, как их преодолеть.
В этой статье отражено исключительно мое личное мнение, и она частично основана на проблемах, с которыми я столкнулась в работе junior тестировщика программного обеспечения.
Ситуации, с которыми я столкнулась, будучи на этой должности, случайны, но я думаю, что они могут произойти с каждым.
Автоматизируем тестирование микросервисов с REST-assured и Kotlin + Allure
Всё началось с того, что перед нами поставили задачу покрыть тестами наши сервисы для микросервисной платформы TOT Pyramid, которую мы развиваем последние два года. Мы были вправе выбрать стек технологий самостоятельно. Данные тесты должны запускаться в CI каждый раз при создании мердж-реквеста и проверять, что изменения ничего не сломали. Выбор пал на Rest-assured, тем более хотелось писать тесты на модном, молодёжном Kotlin.
В данной статье хочу поделиться опытом написания автотестов на Rest-assured + Kotlin. Статья не претендует на Rocket Science - в ней я приведу простые примеры и основные принципы тестирования API, которые применяются у нас в TOT Systems.
Поэтому, если вы ищете инструмент для покрытия API автотестами и при этом хотите писать на Kotlin, то эта статья для вас.
Внедрение автоматизации тестирования в ваш проект
Внедрение автоматизированных тестов, которые тестируют всё приложение, является сложной задачей. От выбора уровней для проверки (API, UI или оба) до управления тестовыми данными и подбора подходящей библиотеки для работы. Основываясь на своем опыте, я подготовил руководство по внедрению автоматизации в ваш проект.
SQL-инъекции для самых маленьких
Мы переходим к технической части статей про тестирование на проникновение. И начнем как всегда с внешнего пути – с эксплуатации веб уязвимостей. И начнем мы с SQL – инъекций.
SQL-инъекция (SQLi) - это уязвимость веб-безопасности, которая позволяет злоумышленнику вмешиваться в запросы, которые приложение делает к своей базе данных. Как правило, это позволяет просматривать данные, которые он обычно не может получить. Это могут быть других пользователей, или любые другие данные, доступ к которым имеет само приложение. Во многих случаях злоумышленник может изменять или удалять эти данные, вызывая постоянные изменения в содержимом или поведении приложения.
Успешный продукт начинается с тестирования: основы и типы тестирования для новичков
Добро пожаловать, новички в тестировании! Вы, вероятно, только начали свой путь в этом увлекательном мире, но не беспокойтесь, мы здесь, чтобы помочь вам разобраться в различных типах тестирования, которые используются в современной практике. Независимо от того, какой уровень опыта вы имеете в тестировании, этот материал будет полезным для вас, чтобы расширить свои знания и умения.
Типы тестирования
Существует множество различных типов тестирования, каждый из которых имеет свои особенности и преимущества. Рассмотрим некоторые из наиболее распространенных типов тестирования.
Для чего QA сдавать кэмбриджский экзамен?
Кэмбриджские экзамены бывают разными: от экзамена для «новичков», присваивающего студенту уровень A2, до экзамена CPE, который идентифицирует вас как «образованного носителя языка» (правда, я лично с этим не совсем согласна). Сертификат, который вы получите, если успешно сдадите экзамен, не сгорает, как в случае с IELTS. Экзамены довольно сложные, поскольку на них проверяются все основные скиллы. Соответственно, всё это требует нехилой подготовки.
Для чего же tech guys* сдавать эти экзамены? Расскажу по порядку.
*кстати, вы в курсе, что разработчики и тестировщики, которых мы в русском комьюнити именуем айтишниками, в европейском комьюнити как правило называют tech guys?
Московский Планетарий и его реконструкции
В Москве на сегодняшний день официально существует два планетария — Московский Планетарий и Планетарий Культурного Центра Вооруженных Сил РФ. О втором мало кто слышал (он довольно скромный в размерах, но тоже очень звёздный). Хотя, любители космической музыки могут вспомнить мои концерты — именно в том маленьком планетарии, пока Большой Планетарий Москвы был закрыт на долгую реконструкцию. Потом Московский Планетарий открылся, и у меня в нем тоже было несколько концертов. Сейчас — по прошествии многих лет — мало кто помнит, что Московский Планетарий закрывался, да еще и очень надолго, ведь сейчас он доступен практически каждый день (кроме вторника), а когда что-то у нас есть постоянно, мы и не думаем — «Каково это — жить без Планетария?»
Антипаттерны тестирования ПО
Введение
Есть несколько статей об антипаттернах разработки ПО. Но большинство из них говорят о деталях на уровне кода и фокусируются на конкретной технологии или языке программирования.
В этой статье я хочу сделать шаг назад и перечислить высокоуровневые антипаттерны тестирования, общие для всех. Надеюсь, вы узнаете некоторые из них независимо от языка программирования.
Терминология
К сожалению, в тестировании пока не выработали общую терминологию. Если спросить сотню разработчиков, в чём разница между интеграционным, сквозным и компонентным тестом, то получите сто разных ответов. Для этой статьи ограничимся такой пирамидой тестов:
Если не видели пирамиду тестов, настоятельно рекомендую ознакомиться с ней. Вот некоторые хорошие статьи для начала:
- «Забытый слой пирамиды автоматических тестов» (Майк Кон, 2009)
- «Пирамида тестов» (Мартин Фаулер, 2012)
- «Блог отдела тестирования Google» (Google, 2015)
- «Пирамида тестов на практике» (Хэм Фокке, 2018)
14 самых вдохновляющих статей о тестировании ПО, которые я когда-либо читал
Ищете вдохновения в области тестирования программного обеспечения? Вашему вниманию список материалов от одних из самых известных экспертов в этой области. Насладитесь 14 лучшими статьями о тестировании программного обеспечения, найденными в интернете, профильных журналах про QA и публикациях о тестировании программного обеспечения.
Вместо 100 запусков приложения ― один автотест, или как сэкономить QA-инженеру 20 лет жизни
Для начала разберемся, что же все-таки мы автоматизируем этой системой.
В первую очередь, это регрессионные UI-тестирования, тестирование core-геймплея и автоматизация бенчмарков. Все три системы в целом дают возможность снизить нагрузку на QA-отдел перед релизами, быть более уверенными в масштабных и глубоких рефакторингах и постоянно поддерживать общую оценку производительности приложения, а также отдельных его частей. Еще одним пунктом хочется отметить автоматизацию рутины, например ― проверку каких-либо гипотез.
Приведу немного цифр. Сейчас для War Robots написано более 600 UI-тестов и порядка 100 core-тестов. Только на этом проекте мы произвели около миллиона запусков наших тестовых сценариев, каждый из которых занимал порядка 80 секунд. Если бы эти сценарии мы проверяли вручную, то потратили бы минимум по пять минут на каждый. Кроме того, мы запустили более 700 тысяч бенчмарков.
Из платформ мы используем Android и iOS ― всего 12 устройств в парке. Разработкой системы и ее поддержкой занимаются два программиста, а написанием и анализом тестов ― один QA-инженер.
[Новичкам] Фреймворк для создания QA тест плана
Когда вы запускаете новый продукт, обеспечение качества (QA) очень важно. Независимо от того, отдаете ли вы аутсорсинг команде QA или выполняете внутренние проверки, вам необходимо создать план тестирования. Это гарантирует, что в процессе обеспечения качества ничего не будет упущено.
Если вы новичок в планировании тестирования, эта статья ответит на все ваши вопросы и предоставит основу для планирования.
Что учить новичку в QA (тестировании)? Самые распространенные на HeadHunter технологии
Таблицы и графики показывают, как часто технология или направление деятельности встречается в описаниях вакансий на HeadHunter со словом "Тестировщик" или QA в названии вакансии.
Может быть, эти сводки помогут вам уточнить дорожную карту новой профессии.
Информация
- В рейтинге
- Не участвует
- Откуда
- Москва, Москва и Московская обл., Россия
- Дата рождения
- Зарегистрирован
- Активность