Решение для тестирования зависит от функциональности приложения и имеющихся ресурсов. Ваш первый вопрос должен быть на какой платформе я пишу и для чего? Платформа операционной системы будет определять набор инструментов по умолчанию.
Какова область применения?
-Ты тестируешь графические элементы?
-GUI IO?
- вычислительная функциональность?
Будет ли у вас доступ к:
- Виртуальная машина (ы) - один компьютер, эмулирующий другие среды
- Использование нескольких локальных компьютеров и KVM-коммутатора, большая вычислительная мощность, простой доступ, хорошо подходит для тестирования графического интерфейса пользователя
- Использование нескольких удаленных машин через SSH или другое устройство сервер-клиент, может потребоваться клиент, такой как VNC, или форма удаленного рабочего стола.
Вам потребуется автоматический способ установки, активации, сброса и создания отчетов. Можете ли вы запустить сценарии или пакетные файлы? Должно ли приложение работать в режиме графического интерфейса, имеет ли оно интерфейс командной строки? Есть ли у вас доступ к другим службам, таким как веб-серверы, можете ли вы открывать порты для отправки / получения отчетов о состоянии? Можете ли вы удаленно войти на тестовые машины, запустить и перезагрузить браузеры из командной строки? Можете ли вы сбросить зависшее приложение?
О сбоях и успехах можно сообщать различными способами, такими как создание локального файла, загрузка изображения с сервера или проверка связи с портом. По сути, тестирование потребует больше работы и времени, потому что вам нужно будет спроектировать, внедрить и, возможно, иронично протестировать набор и устройство тестирования.