Я создаю свой собственный инструмент автоматического тестирования для приложений Java Swing и сталкиваюсь с проблемой, когда графический интерфейс не завершил обновление или загрузку данных из БД, и мои последующие команды не синхронизированы.
Первоначально я хотел проверить AWT System EventQueue и убедиться, что его peekEvent имеет значение null, прежде чем продолжить.
Toolkit.getDefaultToolkit().getSystemEventQueue().peekEvent() == null;
Приведенный выше код работает, за исключением того, что существует сценарий, в котором события находятся в процессе отправки в EventQueueи он возвращает ноль только для заполнения через несколько секунд.
Единственная причина, по которой я внедряю эту систему, состоит в том, чтобы избежать жестко закодированного времени ожидания, поэтому я бы предпочел не ждать, пока не проверит, является ли EventQueue нулевым.
Буду признателен за любые предложения