Тестирование веб-приложений интересно тем, что оно требует наиболее широкого владения различными видами тестирования. Одно из ключевых мест занимает тестирование защищенности (security testing) или проверка отсутствия известных уязвимостей.
Почему тестирование защищенности имеет такое большое значение именно для веб-приложений?
Веб-приложения ориентированы на массовое использование, поэтому сбои в работе, вызванные действиями злоумышленника, могут оказать негативное воздействие на большое количество ни в чём неповинных пользователей.
Веб-приложения могут хранить конфиденциальную информацию, утечка этих данных может иметь очень серьёзные последствия.
Доступ к веб-приложению имеет множество “недоверенных” пользователей, при этом владельцы или разработчики приложения как правило не могут контролировать или ограничивать их действия.
Обмен информацией между браузером и сервером происходит по открытым каналам с использованием открытых протоколов, поэтому сложно контролировать данные, передаваемые клиентами.
Разработка веб-приложений не всегда ведётся с должным вниманием к обеспечению защищенности и надёжности, потому что рынок в первую очередь требует “быстро”!
Разумеется, тестирование защищенности не ограничивается тестированием самого веб-приложения. Уязвимость может находиться в веб-сервере, операционной системе, почтовой системе, ftp-сервере или ещё где-то. Но задача создания защищенного окружения в большей степени находится в зоне ответственности системных администраторов, а вот защищенность вашего собственного веб-приложения -- целиком на совести его разработчиков и тестировщиков.
На тренинге мы рассмотрим как общие принципы компроментации защиты веб-приложений, так и отдельные наиболее распространенные виды уязвимостей, которые могут быть использованы даже не слишком квалифицированным злоумышленником, что существенно повышает вероятность их эксплуатации.
Фреймворки семейства xUnit -- это основа основ автоматизированного тестирования. Они используются для организации и запуска тестов и сбора информации о результатах тестирования, то есть решают одну из ключевых задач автоматизации тестирования.
Однако наши многочисленные тренинги по автоматизации уделяют недостаточно внимания этому важнейшему аспекту разработки автотестов, поэтому мы решили добавить в линейку тренинг, специально посвященный эффективному использованию тестовых фреймворков.
В этом тренинге рассматриваются два наиболее популярных тестовых фреймворка для языка программирования Java -- JUnit и TestNG.
Начать работать с этими фреймворками несложно. Однако опыт показывает, что большинство автоматизаторов использует лишь незначительную часть возможностей, которые предоставляют тестовые фреймворки.
Но может быть эти “продвинутые” возможности просто не нужны, поэтому и не используются?
Увы, часто тестировщики-автоматизаторы строят сложные конструкции из “костылей” и изобретают самодельные велосипеды, не подозревая о том, что нужная функциональность может быть реализована гораздо более простым способом.
Из тренинга вы узнаете, как организовывать тесты в группы, как их запускать в нужном порядке, как правильно описывать зависимости между тестами, как реализовать “мягкие” и “жесткие” проверки, как сделать тесты параметризованными, как реализовать загрузку данных из разных источников и применять подход DDT (data-driven testing), как автоматически перезапустить упавшие тесты и ещё многое другое.
Материал разбит на два уровня сложности: использование встроенных возможностей тестового фреймворка и расширение функциональности фреймворка через специально предусмотренные интерфейсы расширения.
Небольшая компания (телеком сервис-провайдер) в Amstelveen (южный пригород Аместердама). 50+ человек, 10+ национальностей, не стартап (на рынке больше 10 лет, 400+ клиентов).
Я - QA manager, ищу специалистов в свою команду.
Открыты две вакансии: Senior QA и TA Lead.
Senior QA
Требования:
- Опыт в тестировании больше 5 лет.
- Крепкие навыки тест-анализа, тест-дизайна и ручного тестирования, хорошие аналитические скилы - обязательно
- Высокая продуктивность через хорошую методологическую подготовку, опыт и владение инструментарием тестировщика - обязательна
- Английский Upper intermediate или выше - обязательно (английский - основной язык общения в команде)
- Анализ входящих требований и дизайн-спецификаций. Разработка Test approach и тестовых сценариев/кейсов. Оценка трудоемкости.
- Подготовка и проведение ручного тестирования.
- Совместно с IT - поддержка тестовых сред
- Багрепортинг (JIRA)
- Написание документации для внутреннего использования (Confluence)
- Оценка качества тестирования, post mortem reviews, улучшение процесса тестирования и документации
- Помощь QA Manager в проведении внутреннего Acceptance тестирования
TA Lead
Требования:
- Опыт в качестве Разработчика или ТА инженера - от 5 лет
- Опыт организации ТА "с нуля" - определение подхода к автоматизации, обоснованный выбор средств, создание фреймоворка и т.д.
- Опыт продолжительностью более года в использовании трех и более полноценных инструментов автоматизации (уровня Selenium WebDriver, TestComplete, SoapUI, JMeter, etc).
- Опыт автоматизированного тестирования веб-приложений, веб-сервисов (SOAP, JSON): модульного, интеграционного, функционального и нагрузочного тестирования.
- Опыт встраивания TA в процессы Continuous Integration.
- Плюсом будет опыт в SQL (в частности MS SQL), XML tools, WordPress, .NET (C#), MS IIS, Jenkins, SVN, Linux, Windows Server
- Английский Upper intermediate или выше - обязательно
Обязанности:
- Разработка и документирование подхода к автоматизации на новый и существующий функционал.
- Выбор инструментария.
- Создание фреймворка для автоматизированного тестирования.
- Разработка автоматизированных тестов на основе тестовых сценариев ручного тестирования.
- Запуск тестов в ручном и автоматическом режиме, отслеживание результатов.
- Репортинг багов.
- Непрерывное улучшение фреймворка и тестов.
Собеседование по скайпу. Возможно доп. тестовое задание.
Компания учувствует в программе Highly Skilled Migrant (Kennismigrant) в качестве Recognized sponsor. Таким образом, подписав контракт, Вы получаете вид на жительство в Нидерландах для себя и для супруга/супруги, а также для детей. Супруг имеет право работать. На 8 лет получаете серьезную скидку по налогам и прочие плюшки от государства. Временный вид на жительство продляется вместе с контрактом. Контракт заключается на год, потом продляется еще на год (опционально), потом становится перманентным. Через 5 лет - дается ПМЖ или гражданство Нидерландов. Крепостного рабства нет, менять работу можно (достаточно выполнять условия программы Highly Skilled Migrant и не прерывать трудовой стаж). От себя добавлю, что это предложение – не столько способ съездить на заработки и вернуться, а скорее возможность спокойно и технично переехать (особенно с семьей) в европейскую страну с высоким уровнем жизни, плохой погодой, 100% проникновением английского языка и очень хорошим отношением к приезжим.
ЗП по результатам собеседования, но не ниже чем того требуют условия программы Highly Skilled Migrant для Вашего возраста.
Резюме и вопросы по вакансии - пожалуйста, в личку (общеполезные вопросы/ответы потом перенесу в топик).
Вопросы по эмиграции в Нидерланды - в гугл, информации много.
Приветствую! Меня зовут Илья, мне 33 года. На данный момент имею работу не связанную с тестированием ПО, но хочу обучиться этой профессии.
С теорией проблем особых не вижу, а по поводу практики, как раз ищу человека, который сможет обучить меня в свободное от работы время.
Сам процесс обучения представляю следующим образом: по скайпу, несколько раз в неделю проводить со мной урок, давать "домашнее задание" с последующим разбором, т.е. я делаю акцент именно на практику, т.к. для меня это наиболее эффективный метод обучения. Время обучения - как Нам будет удобно. Продолжительность обучения порядка полугода, но может быть и более. Оплата по договорённости, с каждого урока. Так что, кому интересно, пишите.