Прошу совета у сообщества опытных автотестеров, т.к. я пока начинающий. На данный момент удалось найти продуктовую компанию, которая занимается разработкой систем промышленной автоматизации SCADA. Пишут на С++, используют библиотеку Qt. Автотесты пишут на Python с помощью фреймворка Frologic Squish. Для организации процесса разработки/тестирования используют JIRA + Bamboo.
У меня 2 вопроса.
1. Как оцените набор инструментов и перспективность погружения в такой проект?
2. Буду очень признателен, если порекомендуете внятные обучалки по Squish и JIRA + Bamboo (в контексте интеграции с тестами)
Вначале я рассматривал тестирование, разработку и людей, вовлеченных в эти процессы, примерно так:
Затем я решил, что эти две области перекрывают друг друга. Тестировщики иногда занимаются разработкой, а разработчики могут привлекаться к тестированию.
Но позже я понял важную вещь. Тестировщики это тоже разработчики - они же участвуют в процессе разработки программного обеспечения! И, надеюсь, приносят пользу.
За прошедшие несколько лет инструмент автоматизации тестов для веб-приложений Selenium приобрел фантастическую популярность.
Владение этим инструментом стало одним из обязательных умений для тестировщика-автоматизатора, достаточно посмотреть динамику вакансий, чтобы убедиться в этом.
Если вы хотите считаться профессионалом в области автоматизации тестирования, строчка "я знаю Selenium" обязательно должна присутствовать в вашем резюме.
Простые тесты можно создавать при помощи рекордеров Selenium IDE или Selenium Builder. Но при увеличении объёма и сложности тестов этот подход теряет свою эффективность и привлекательность. Профессионалы пишут тесты на языках программирования.
Основным "официальным" языком программирования для Selenium является Java, потому что большая часть самого Selenium реализована на этом языке и все новые возможности сначала реализуются на Java, а потом переносятся в реализации на других языках – .Net (C#), Ruby, Python.
Этот курс предназначен для тех, кто хочет освоить программный интерфейс Selenium 2.0 и научиться разрабатывать автотесты для веб-приложений на языке программирования Java.
Если до этого Вы не занимались автоматизацией и не знакомы с Selenium, то лучше начать с курса Selenium 2.0: стартовый уровень.
Также существует аналогичные тренинги на языке Python и на C#.
После прохождения тренинга учащийся будет уметь разрабатывать автоматизированные тесты для веб-приложений на языке программирования Java с использованием инструмента Selenium 2.0, в частности:
владеть базовым набором команд Selenium 2.0, эмулирующих действия пользователя (ввод текста, клики мышью),
владеть расширенным набором команд Selenium 2.0, эмулирующих действия пользователя (клавиатурные сочетания, перетаскивание элементов мышью и другие),
владеть техниками поиска (идентификации) элементов в окне браузера,
уметь обеспечивать стабильность и скорость выполнения тестов за счёт правильного использования ожиданий,
уметь выполнять проверки фактических данных, полученных из браузера, на соответствие ожидаемым значениям,
владеть основными шаблонами проектирования тестов, в том числе шаблоном PageObject,
уметь выстраивать архитектуру тестов таким образом, чтобы тесты можно было легко модифицировать и добавлять новые (при небольшом количестве тестов),
уметь организовывать инфраструктуру для запуска тестов на сервере непрерывной интеграции.
Чем тестирование веб-приложений отличается от тестирования каких-нибудь других приложений?
При тестировании веб-приложений применяются те же самые классические методы и техники проектирования тестов. Веб-приложения обычно имеют более простой интерфейс, чем "десктопные" программы. Браузером все умеют пользоваться, для этого не нужны какие-то специальные навыки.
Но существует ряд нюансов, связанных с социальными и технологическими особенностями веб-приложений, которые отличают их от других видов приложений, и которые обязательно нужно учитывать при тестировании, чтобы выполнить его профессионально.
фантастическое многообразие технологий, которые скрываются за простым фасадом браузера – фактически каждое веб-приложение является не самостоятельной программой, а частью всемирной паутины, и в работу веб-приложения вовлечено очень много разнородных компонентов,
невероятная скорость веб-разработки как в узком, так и в широком смысле – короткие релизы, быстро меняющиеся требования, постоянное совершенствование существующих технологий и возникновение новых,
потрясающее разнообразие пользователей, от случайных посетителей до постоянных клиентов, от младенцев до стариков, от новичков до хакеров,
полная открытость технологий, протоколов передачи данных, стандартов, и одновременно с этим необходимость особенно тщательной защиты, с учётом написанного в предыдущем пункте.
Кроме того, в этом курсе даются основы нефункционального тестирования веб-приложений – тестирование производительности, защищенности, удобства использования. В дальнейшем можно продолжить изучение отдельных видов нефункционального тестирования в более углублённых специализированных курсах Тестирование производительности веб-приложений и Тестирование защищенности веб-приложений.
После прохождения тренинга учащийся будет:
понимать принципы работы веб-приложений и знать, какие технологии при этом используются,
знать особенности тестирования веб-приложений по сравнению с десктопными приложениями,
уметь проектировать тесты с учётом особенностей веб-приложений и оценивать покрытие тестами функциональности приложения,
уметь выполнять тесты, при необходимости используя инструментальные средства для преодоления ограничений, накладываемых браузером,
владеть инструментами, для выполнения специфических проверок, характерных для веб-приложений:
анализ целостности ссылок,
анализ соответствия веб-стандартам,
понимать причины возникновения уязвимостей в веб-приложениях и уметь обнаруживать наиболее критические уязвимости в веб-приложениях,
понимать принципы оценки производительности веб-приложений и уметь выполнять анализ серверной и клиентской производительности веб-приложений,
уметь рассуждать об удобстве использования веб-приложений :)
Каждое занятие будет сопровождаться практическими заданиями, которые помогут быстрее и увереннее начать применять знания на практике.
Ищем QA Automation в рижский офис аутсорсинговой компании Accenture
www.accenture.com
Искомый специалист должен иметь не менее 3-ёх лет опыта в автоматизированном тестировании, иметь практические навыки с такими инструментами и технологиями, как: Java, Junit, Cucumber, Selenium Webdriver, Jmeter и/или Loadrunner, а также владеть разговорным английским на уровне не ниже Intermediate.
Компания предлагает работу с интересными проектами на крупных иностранных заказчиков, большая часть из которых находится в странах Nordic. Во время работы специалисты могут переезжать и в другие страны ЕС на сторону заказчика; командировки могут длиться до двух недель в месяц. Также компания усиленно вкладывает в развитие и сертификацию своих специалистов - существует возможность пройти обучение в Массачусетском университете от Accenture.
Компания компенсирует полностью все оформление, переезд, услуги брокера для поиска жилья, обширную медецинскую страховку. Офис в Риге находится в центре города, официальное трудоустройство в штат компании, оформление Blue Card.
Если возникли вопросы либо же заинтересовало предложение, для более предметной беседы прошу добавляться в скайп ignatyeva_evgeniya или писать на почту e.ignatyeva@itnt.com.ua
p.s. предсказывая вопрос о вилке зп: к сожалению, не имею права разглашать её в "общественных" местах. надеюсь на понимание :)