.. _gsauto_namingconventions: Соглашения по наименованию методов ================================== Соглашения применяются к методам с областью видимости ``public``. Методы с областями видимости ``protected`` или ``private`` могут не соблюдать эти правила. 1. Методы поиска с именами, начинающимися с ``find``. Выполняют поиск объекта (обычно DOM-элемента) на текущем состоянии интерфейса. Результат выполнения: объект типа `Optional` .. code-block:: java :caption: Пример поиска HotkeyDropDown.KeySelector keySelector = dropDown.findKeySelector().orElseThrow(); 2. Методы поиска массивов или коллекций с именами, начинающимися с ``find``. Выполняют поиск нескольких объектов (обычно DOM-элементов) на текущем состоянии интерфейса. Результат выполнения: массив или коллекция найденных объектов. .. code-block:: java :caption: Пример множественного поиска DialogButton[] buttons = DialogButton.findAll(someDialog); Assertions.assertTrue(buttons.length > 0); 3. Методы получения с именами, начинающимися с ``get``. Выполняют поиск объекта (обычно DOM-элемента). Если объект не найден, метод бросает исключение типа `RuntimeException`. Результат выполнения: объект конкретного типа .. code-block:: java :caption: Пример метода получения try { int recordsNum = grid.getRows().size(); // ... } catch (RuntimeException exception) { Assertions.fail(exception.getMessage(), exception); } 4. Методы ожидания с именами, начинающимися с ``wait``. Ожидают выполнения условия (например, появление DOM-элемента). Если за заданное время условие не выполнено, метод бросает исключение `TimeoutException` или :java:type:`AutomationException `. Результат выполнения: объект конкретного типа .. code-block:: java :caption: Пример метода ожидания try { form = application.waitMdiForm("gtk-ru.bitec.app.gs3.qa.composer.Gs3_QAReferenceWithCollections#List"); // ... } catch (AutomationException | TimeoutException exception) { Assertions.fail(exception.getMessage(), exception); } 5. Методы поиска c другими именами. Имеют поведение, аналогичное методам поиска с именами, начинающимися с ``get``.