Закодированное, связанное с TFS, автоматизированное тестирование пользовательского интерфейса во всех браузерах

Я ищу инструмент тестирования веб-интерфейса, который:

О. Можно протестировать как минимум IE, Firefox, Chrome и Safari;

B. Не зависит от "записи" и может быть чисто закодирован;

C. Может извлекать таблицы данных из тестовых наборов TFS для ввода;

D. Может пройти тестовые шаги через код (или у меня есть возможность делать вызовы API TFS, чтобы сделать это самостоятельно)

Одна из проблем заключается в том, что многие наборы не работают в Safari, а одна из наших основных демографических групп — это iPad, установленный в киоске с Safari.

Другие наборы - это только записанные действия или их «преобразование в код». Я не могу понять, как просто пропустить и сделать только в коде.

Я не могу найти ничего, что могло бы провалить тестовый шаг. Возможно, мне придется кодировать эту часть самостоятельно, используя API TFS.

Ответы (1)

Sikuli — это кросс-платформенный тестовый инструмент на основе Python, который может использовать визуальное распознавание элементов пользовательского интерфейса, чтобы решить, а) что щелкнуть и б) каковы результаты. Он может генерировать результаты Pass & Fail, и вы можете добавить практически любой код Python на каждом этапе тестирования.

Поскольку он ищет визуальные компоненты, он должен работать практически в любом браузере.

Потрясающее предложение. Но я ненавижу говорить, что это не соответствует пункту Б. Это основано на скриншотах и ​​презентации. Я ищу продукт, который представляет собой чистое кодирование, что по доверенности означает, что он должен использовать DOM. Хотя я несколько впечатлен полезностью Sikuli.
@Suamere основан на распознавании элементов экрана (а не скриншотов), хорошая новость об этом подходе заключается в том, что вам не нужен доступ к исходному коду, dom или другому низкоуровневому коду, такому как идентификаторы элементов, - если у вас есть доступ к символы кнопок и т. д., то вы можете генерировать их из чистого кода — вы также можете создавать свои тесты в одном браузере, а затем запускать их в нескольких других. NB Я видел веб-страницы, на которых кнопки имели идентификаторы, но не были видны — подход DOM не подвел их, даже если они были непригодны для использования.