Работаю функциональным тестировщиком, но по проекту необходимо написать автоматизацию веб-сервисов. Т.е. ручную часть я сделаю через SoapUI, а чтобы все это потом происходило без моего вмешательства я хочу автоматизировать. Вопрос в выборе средства. Много всего написано про Jmeter, можно его, но я им никогда раньше не пользовался. Проект пишется на .Net, коллеги-программисты говорят, чтобы я брал Visual Studio, и там писал тесты, если что - помогут (у меня есть небольшой любительский опыт программирования на java, на .Net - нету). И всё же выбор за мной. Подскажите ребят, что лучше подойдет для автоматизации веб-сервисов, ну и вообще ваши идеи по поводу этой ситуации...:) Заранее спасибо! :)
Можно автоматизировать тестирование веб-сервисов и при помощи SoapUI.
Ваши коллеги предлагают вам следующий путь: создаете Тестовый проект. Подкладываете интерфейсы с описанием сервисов, настраиваете эндпоинты, создаете тест-классы и в них вызываете необходимые сервисы и добавляете к этому проверку данных.
В варианте с SoapUI вам придется парсить XML или JSON возвращаемый веб-приложением. Этот вариант более наглядный, чем предыдущий. Но придется писать скрипты парсинга и проверки данных на Groovy.
Лично для меня был бы предпочтительнее первый вариант, т.к. с SoapUI я не работал.
Я вам тоже советую использовать .Net с ним автоматизировать что-либо, веб-интерфейс или веб-сервисы проще простого. Я сам тестирую свои сервисы средствами Microsoft. Там все очень просто
1) Создаете обычный проект тестов (библиотеку классов).
2) Подключаете библиотеку Nunit
3) Правой кнопкой на проекте - добавить ссылку на службу, добавляете ссылку на WSDL файл своего сервиса.
4) Тестируете :) Вызываете методы и передаете туда параметры.
В отличии от Jmeter вам не надо заморачиваться с XML, SOAP, JSON и прочими протоколами, вы все делете через конструктор и проводите полное функциональное тестирование. Но зато с помощью Jmeter вы можете провести нагрузочное тестирование сервисов. И тот и другой инструмент подходит для вашей задачи, тут дело вкуса :)
Ps Подозреваю что на Java тоже можно создать клиента для веб-сервиса и точно так-же протестировать его, но к сожалению опыта с Java у меня не много :)
SoapUI это собственно и есть тул для автоматизации тестирования WEB сервисов. Можно все автоматизировать и бесплатной. Но придется действительно парсить XML, скорее всего писать looper и т.д. Платная не такая уж и дорогая, но она позволяет в принципе избежать программировния вовсе. Мало того, синтаксис Java полностью поддерживается Groovy. Это значит что не надо будет учить Groovy (который к слову простой и наглядный да к тому же и динамический) а можно писать на Java.
Также SoapUI позволяет подключить любую Java библиотку и пользуясь API делать что необходимо. Также в SoapUI есть JDBC тест степы, которые позволяют работать с БД и возвращать результат как XML.
Мое, имхо, именно писать кода нуджно будет меньше в SoapUI чем в студии. Более того, тестируя вручную методы веб сервиса с помощью SoapUI вы тем самым автоматизируете тестирование. Вы ведь уже создали запрос и проверили его визуально. Осталось проверку автоматизировать.