Существуют ли инструменты, которые регистрируют действия пользователя, чтобы помочь воспроизвести ошибки?

Как инженер по тестированию, я часто участвую в предварительных испытаниях. Когда я сталкиваюсь с ошибкой, не всегда сразу понятно, какие шаги привели к проблеме. Поэтому, очевидно, я должен найти необходимые шаги для воспроизведения проблемы. В зависимости от ситуации, это может занять много времени.

Что было бы действительно полезно, так это средство ведения журналов, которое отслеживает действия мыши и клавиатуры и, возможно, также сохраняет свойства компонентов, по которым щелкнули (AUT написано на Java).

Я просто не мог найти подходящий инструмент, но, возможно, мой подход к поиску ошибочен.

Кто-нибудь может указать мне правильное направление?

7 ответов

Решение

Вы можете проверить BB Test Assistant. Я видел очень раннюю версию этого и был впечатлен. Я также слышал хорошие вещи от людей, которые использовали его с тех пор.

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

Например, Selenium - плагин Mozilla, который записывает ваши действия и может быть воспроизведен позже.

Log4J - это средство регистрации Apache для Java с множеством опций для вывода логов. Приятно то, что вы можете вставлять в код столько журнальных сообщений и включать и выключать их в зависимости от уровня ведения журнала, сколько считаете нужным. Так, например, у вас есть отладочные сообщения и информационные сообщения. если вы вставляете некоторые сообщения отладки и некоторые информационные сообщения в свой код, тогда вы устанавливаете уровень ведения журнала на отладку, тогда вы обнаруживаете, что все отладочные и информационные сообщения записываются в журнал.

Если вы установили уровень регистрации в info, то будут регистрироваться только информационные сообщения. У вас есть и другие уровни.

РЕДАКТИРОВАТЬ: Я перечитал вопрос и понял, что я не ответил правильно... извините. Но вы можете поместить операторы регистрации в действия в коде Java и выполнить то же самое, что вы хотите. Это требует перекомпиляции, хотя.

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

1) http://camstudio.org/
2) Google для "свободного захвата видео экрана" для больше.

BR,
~ A

Проверьте ReplayDIRECTOR: http://replaysolutions.com/ Очень полезно для исследовательского тестирования, поскольку оно записывает все взаимодействия вашего Java-приложения с окружающей средой (пользовательский ввод, системные вызовы, ответы БД) и позволяет позднее воспроизводить записанные сеанс, с приложением, фактически работающим и выполняющим тот же путь через код. Записанные входы будут поданы в приложение точно так же, как и во время записи.

В дополнение к предложению @anjanb о захвате экрана, вы можете запустить вашу программу в отладчике, который записывает ее выполнение и позволяет вам вернуться назад по трассировке.

Omnicore CodeGuide имеет довольно хорошую реализацию концепции (хотя вам нужно постобработать свой байт-код). Это коммерческое программное обеспечение, но по разумной цене. Не уверен, что он находится в стадии активной разработки.

Другим (бесплатным) продуктом является Omniscient Debugger, который я тестировал несколько лет назад и обнаружил, что он уступает GC (используется слишком много памяти, недопустимые замедления). Тем не менее, я вижу на их веб-странице, что они достигли некоторого прогресса, так что вы можете проверить это.

Также есть Session Tester: http://sessiontester.openqa.org/

Session Tester - это исследовательский инструмент тестирования для управления и записи сеансового тестирования. У Session Tester есть таймер, поэтому вы можете поддерживать продолжительность тестовых сессий, и он обеспечивает простой способ записи заметок о сессиях. Заметки хранятся в формате XML, который можно преобразовать в HTML или преобразовать в любую форму, которую вы пожелаете.

Другие вопросы по тегам