Автоматизация тестирования для внешнего интерфейса, созданного на JavaScript

В моей организации в настоящее время есть приложение для Windows, которое через пару лет будет прекращено. Мы создаем веб-версию этого приложения, чтобы заменить устаревшую систему. В настоящее время API пишется на C#, и большая часть внешнего интерфейса выполняется на JavaScript с использованием нескольких расширений/фреймворков JavaScript, таких как NodeJS, HandleBars, Backbone и Bootstrap. Команда QA в моей организации состоит из 4 тестировщиков, ни один из которых не имеет опыта программирования. Прежде чем я пришел в организацию, команда выбрала Microsoft Test Manager в качестве решения для автоматизации тестирования SANITY не только нашего приложения Windows, но и нашего веб-приложения, которое находится в разработке.

Проблема, с которой я столкнулся, заключается в том, что, поскольку внешний интерфейс построен на JavaScript, такие инструменты, как Microsoft Test Runner и Coded UI Builder, не могут идентифицировать элементы DOM. Следовательно, автоматизация нажатия кнопки или ввод информации в определенное поле не может быть записана (Microsoft Test Runner и Coded UI Builder распознает только объект «документ» при нажатии на любую часть веб-сайта).

Моя цель: найти инструмент, который я могу использовать для автоматизации тестирования (без какого-либо программирования) внешнего интерфейса, построенного на JavaScript.

Мой вопрос: возможен ли такой тип автоматизации с помощью Microsoft Test Manager, и я просто не знаю? Если это невозможно, есть ли какие-либо инструменты, которые вы можете предложить для этого типа автоматизации?

Спасибо, Эрнандо Ойос.


person hfrog713    schedule 30.05.2013    source источник
comment
Мне нравится, что Greasemonkey/tampermonkey буквально записывают действия интерфейса, используя elm.click() и т. д. Это чрезвычайно гибко и может запускать CI на неиспользуемом дешевом рабочем столе. есть более причудливые пакеты, selenium, phantom и т. д., но имхо, JS более чем подходит для этой задачи.   -  person dandavis    schedule 30.05.2013
comment
Selenium   -  person epascarello    schedule 30.05.2013
comment
Спасибо за ответы dandavis и epascarello. Я понял, что причина, по которой Microsoft Test Runner и Coded UI Builder не подбирали объекты документа, заключается в том, что я использовал Google Chrome вместо Internet Explorer. Теперь, когда я использую Internet Explorer, появляются инструменты для распознавания элементов документа, и записи действий записываются нормально.   -  person hfrog713    schedule 30.05.2013
comment
Я совершенно уверен, что вы также получите функциональность x-браузера с обновлением 2.   -  person Andrew Clear    schedule 07.06.2013


Ответы (1)


Там, где я работаю, мы используем инструмент под названием SAHI. Пара преимуществ этого инструмента заключается в том, что он является открытым исходным кодом и проприетарным (на случай, если вам нужна дополнительная функциональность), он работает во многих браузерах, имеет возможности тестирования на основе данных, такие как доступ к базе данных или даже чтение и запись файлов Excel, и это имеет функцию записи. Вы можете записать свой сценарий на основе того, что вы хотите протестировать, и воспроизвести его. Нет необходимости в программировании. Очень похоже на упомянутый инструмент Selenium.

person Chezzwizz    schedule 10.11.2013