Что лучше использовать для автоматизации на Selenium : Python или Java


(Vedzmak) #1

Стал выбор между двумя языками, Python и Java. Я понимаю что это холиварный вопрос, но из вашего опыта что удобнее?


Какой ЯП выбрать для Автоматизации и не только?
Выбор языка написания тестов (нет акцента на чем написано приложение)
(Сергей Блохин) #2

Ruby, конечно.


(Дмитрий Жарий) #3

Только C#!


(rpwheeler) #4

Вопрос задан совершенно абстрактно.

Удобнее то или другое может быть в зависимости от кучи факторов, — в какой это будет происходить среде, с какими другими инструментами для отчетов или фреймворками это будет связываться, каково знание каждого из языков и т.д. и т.п.

В любом случае есть же какие-то планы на будущее, где это применять. Если чисто для себя и попробовать, удобнее язык, который больше нравится. А вот если это надо встроить в какой-то реальный проект, связать с другими инструментами, — то это уже совсем другие танцы.


(Сергей Блохин) #5

Задние ряды на Mac OS X тихо хихикают и нервно на Mono поглядывают.


(Александр Таранков) #6

как уже @rpwheeler выше написал, критерий выбора ЯП для автотестов зависит от многих факторов, среди которых удобство далеко не всегда главное. Если хотите применять в реальном проекте, то нужно учитывать такие факторы как:

  1. наличие опыта работы с ЯП лично у вас
  2. наличие рядом опытных разработчиков
  3. сложность подбора кадров с опытом работы с ЯП
  4. технологии, применяемые на проекте
  5. и т.д.

Если чисто для себя, то берите к чему душа лежит и что вы считаете более перспективным для себя


(Дмитрий Жарий) #7

Полностью поддерживаю, и хочу подчеркнуть некоторые случаи:

  1. наличие опыта работы с ЯП лично у вас

Очень правильно, что это пункт поставлен первым. Я бы сказал – это самый приоритетный пункт. Автоматизацию лучше начинать на том языке, который вы либо знаете, либо, который вам будет легче изучить. Python – легче изучить, чем Java, вместе с тем, он ничем не хуже с точки зрения использования ООП. Java – язык более строгий. Есть больше библиотек, и больше информации в сети по поводу использования Java + WebDriver. Уже есть фреймворки, модули отчетности, вебинары по этомой теме. Но, Java – сложнее для изучения, т.е. надо знать больше, чтобы не писать глупый код.

2.наличие рядом опытных разработчиков

Я бы добавил еще: «которые готовы помочь и потратить свое время на вас». Если это так – то, это будет одним из основных факторов выбора. Если помогать не будут – то неважно, есть ли рядом опытный разработчик или его нет.

3.сложность подбора кадров с опытом работы с ЯП

Для любой вакансии, идет «пакет». Например, веб-разработчик на Java должен знать и JavaScript и CSS и SQL и основные фреймворки. Для автоматизатора на Java – «пакет» значительно меньше. Обычно, хватит просто языка. А Python – язык простой для изучения. Можно с любого языка, очень быстро переучится. Тут, конечно же, требуется время. Это не основной критерий, тем не менее, Хаскель или Кобол – лучше не рассматривать для автоматизации.

4.технологии, применяемые на проекте

У вас будет больше шансов, передать часть работы по автоматизации разработчикам, если все на проекте используют одни и те же технологии. Внимание, я говорю, что будет больше шансов, а не 100% шансов. Если вы, допустим, только-только изучив язык программирования, будете писать какашка-код (по мнению разработчиков), извините, то никто из разработчиков в нем ковыряться по своей воле не будет.