Python для новичка в автоматизации, с чего начать?

Всем привет. На данный момент я работаю ручным тестировщиком, но планирую двигаться в сторону автоматизации. Пробовал свои силы в написании автотестов на #java, в общем понял, что это мое. Теперь возник вопрос с выбором нужных #framework для #python (решил перейти на #python и в будущем уже уйти в разработчики), настройкой среды и т.д., т.е. всего, что нужно для нормальной работы и написания, структуры автотестов на #python, подскажите пожалуйста. Спасибо

1 лайк

Вот пара книг по автоматизации на python: Learning Selenium Testing Tools with Python.pdf — Yandex Disk
Testing Python.pdf — Yandex Disk
Но лучше на мой взгляд начать с изучения selenium, за одно и с python потренируетесь. Потом уже можно смотреть в сторону какого нибудь юнит тест фреймворка, например pytest.

2 лайка

А почему в разработчики?

Да это пока в планах)) Вообще в автоматизацию хочу углубиться

Спасибо большое! В связке Java + Selenium использовал TestNG просто и дальше не копал, а тут начал искать по python, а там столько всего. Получается, что в python больше возможностей в сфере автоматизации? И еще подскажите по структуре пожалуйста. У меня раньше было так в проекте: src/main/java - мои пэйджи; src/test/java - мои тесты. А какова структура проекта в pythone? Хотелось бы уже начать нормально и без “гавнокода” в структуре и прочем, чтобы не ударить в грязь, так сказать))

По поводу возможностей я бы так не сказал, для java очень много различных библиотек и фреймворков данного направления (тот же selenium раньше под java обновляется, если я не ошибаюсь). Просто на мой взгляд python больше подходит для автоматизации (щас меня запинают джависты :smiley: ) т.к. он интерпретируемый, он проще для изучения, более лаконичный и дебажить будет проще, но опять же это только на мой взгляд :smile: По поводу структуры, тут нет так называемого “сильвер буллета”, каждый делает так, как ему удобнее, как он считает более правильно, абсолютно правильного решения нет, тут нужно пробовать. Есть готовые фреймворки, недавно на этом форуме выкладывали неплохое решение для работы с selenium под python - Webium Для него есть “сорцы”, можешь поглядеть как делают другие :wink: Да и на одном python не стоит зацикливаться, нужно развивать себя в разных направлениях. Просто некоторые вещи проще делать другими средствами, тут нужно смотреть, что больше подходит в данной ситуации (Например для написание эмуляторов сервисов, я использую SoapUI, т.к. на нем это сделать проще и быстрее чем писать с нуля на python).

2 лайка

Если Вы начинаете совсем с нуля, то пройдите какой-нибудь онлайн-курс. За неделю получите базовые знания и навыки. Опробовал такой подход обучения на студентах - работает: не скучно и эффективно.

Онлайн курс по автоматизации? Вы много таких знаете?

Онлайн курс по питону, например, этот http://www.codecademy.com/tracks/python

1 лайк

Или вот например Поиск 🔍 организации или лица - Предоставление сведений из ЕГРЮЛ/ЕГРИП в электронном виде

2 лайка

О, на codecademy я уже начал заниматься и скачал еще книжку Лутца по основам языка. Спасибо

1 лайк

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

1 лайк

Глядя на программу курса и стоимость, взял бы не задумываясь, будь это Руби)

Добавил в wishlist Поиск 🔍 организации или лица - Предоставление сведений из ЕГРЮЛ/ЕГРИП в электронном виде, придет черед и к ruby

1 лайк

Для изучения питона применительно к задачам тестирования у нас есть курс “Программирование на Python для тестировщиков”, а по Selenium целая линейка тренингов разных уровней и на разных языках.

А кто на какой версии python кодит? Подскажите пожалуйста.

Я использую 3х версию в данный момент. Есть как свои плюсы так и минусы. Перешел из-за постоянных проблем с кодировками в версии 2х. Вообще лучше начать изучение с версии 2х, под него и библиотек больше и примеров в интернете. Со временем как подучите язык, уже сами сможете решить нужна ли вам 3ка :smile: Да, и небольшой совет, если есть возможность, используйте лучше *nix ОС, на ней в разы удобнее работать с python и проще ставить некоторые пакеты (некоторые пакеты требуют сборки, в *nix это решается просто установкой gcc, make и прочих сопутствующих библиотек которые ставятся в пару команд, а в windows придется искать либо готовую сборку в exe/msi либо ставить visual studio либо какой то аналог, плюс всякие vs redistr и прочее, вобщем головняк еще тот :smile: ).

2 лайка

Microsoft подсуетилась и выпустила компилятор, на котором собирается Python 2.7 => установка пакетов в последнее время упростилась.
http://www.microsoft.com/en-us/download/details.aspx?id=44266
Однако, отмечу, что я пользуюсь vagrant c centos - установка всего тестового окружения проста, понятна и автоматизирована

3 лайка

Не знал о таком компиляторе, спасибо! Но я все же за Linux/Mac. Под Linux к тому же есть нормальный docker, да и если лень собирать либы, в большинстве случаев они есть в репозиториях :wink:

У меня вопрос про docker: вы его используете в тестировании\разработке?
Сейчас мы активно это изучаем. Если интересно, можем рассказать, как мы его применили в тестировании.
Мы совсем отвлеклись от темы, но она послужила хорошей площадкой для беседы об автоматизации и её окружении в python.