На работе я занимался разработкой и поддержкой автотестов на Java с использованием фреймворка AssertJ. Моя основная задача заключалась в тестировании функциональности графических интерфейсов (GUI), построенных на базе библиотеки Swing. Я писал автоматизированные тесты, которые проверяли корректность работы различных элементов интерфейса и их взаимодействий. Для повышения качества тестирования я разработал утилиту, которая позволяла автоматически проверять GUI приложения, создавая и сравнивая скриншоты на пиксельном уровне. Эта утилита помогала быстро обнаруживать любые визуальные изменения или регрессии в интерфейсе, что было важно для поддержания высокого уровня качества продукта.
Создания цифрового двойника в SAP PM: сбор данных, описания мастер-данных оборудования и производственных линий.
Закончил магистратуру в университете аэрокосмическом приборостроения в 2024 по программе прикладная информатика.
Описание дипломного проекта:
Разработка и внедрение библиотеки интеграционного тестирования для десктопных приложений на Java с использованием технологии Swing. Библиотека автоматизирует процесс тестирования графического интерфейса, используя методы захвата и сравнения скриншотов, что повышает качество и надежность конечного продукта.
Основные достижения:
- Провел анализ современных библиотек и инструментов для интеграционного тестирования десктопных приложений.
- Разработал архитектуру библиотеки, включающую компоненты для захвата и сравнения скриншотов.
- Реализовал ключевые функции библиотеки, включая автоматический захват и сравнение изображений GUI компонентов.
- Успешно внедрил библиотеку в реальный проект и оценил ее эффективность и надежность.
- Использовал современные технологии, такие как Java, Swing, JUnit, AssertJ, и методы автоматизации тестирования.
Технологии и инструменты:
- Языки программирования: Java.
- Инструменты: IntelliJ IDEA, Maven, JUnit, AssertJ, Git.
- GUI-технологии: Swing.
- Методы тестирования: Интеграционное тестирование, автоматизация тестирования GUI.
Результаты:
- Разработанная библиотека позволила сократить затраты времени и ресурсов на тестирование десктопных приложений, повысив их качество и стабильность.
Вот код дипломного проекта: https://github.com/HowardSTAR/GUITestingLibrary