Возможно ли тестировать пользовательский интерфейс unit-тестами? Это выглядит сложно — но, оказывается, достаточно легко, если у вас есть есть подходящие инструменты и методики. В нашей команде JavaFX они есть, и мы готовы ими поделиться.
В самом деле, тестирование пользовательского интерфейса не может быть только ручным, потому что все уровни тестирования применимы и к коду пользовательского интерфейса, в том числе unit-тестирование, пре-интеграционное тестирование, build-acceptance тестирование и т.д.
В ходе сессии мы создадим тесты для тестирования пользовательского интерфейса с нуля, покажем некоторые из существующих тестов наряду с другими инструментами, которые сделать облегчат нашу жизнь. Мы покажем, как сделать тесты интерфейсов стабильными и недорогими с точки зрения их поддержки. После сессии у вас будет набор инструментов с открытым кодом и концепция тестирования пользовательских интерфейсов, так, что написать JavaFX тесты для тестирования UI будет так же просто, как Ваши обычные тесты.
Во время доклада мы продемонстрируем подходы и инструменты, позволяющие расширить тестовую базу для такого тестирования.
Александр Ильин
Архитектор качества Java SE, Oracle
Александр является архитектором качества Java и JavaFX и ряда продуктов Java SE и JavaFX, а также архитектором инструментов тестирования, а ранее являлся руководителем/архитектором продуктов Java Studio Creator и Netbeans. До этого Александр работал в качестве члена / руководителя команды инструментов NetBeans QE. Александр является автором Jemmy — инструмента с открытым исходным кодом, предназначенного для тестирования пользовательского интерфейса. Инструмент широко используется для тестирования пользовательского интерфейса приложений Swing / AWT, а также для тестирования самого Swing. Jemmy v3 является инструментом нового поколения, разработкой которого руководит Александр и который, наряду с другими библиотеками UI позволяет тестировать и пользовательский интерфейс JavaFX. Инструмент с успехом используется для тестирования JavaFX SDK и JavaFX продуктов, разработанных в компании.