По моему мнению, лучшая практика - это работать шаг за шагом, модуль за модулем.
Если в форме есть текстовые элементы - сначала нажмите на них, а затем отправьте им нажатия клавиш. Позже измените селектор и в конце нажмите кнопки, такие как submit:
@Test
public void clickElementByID(@Optional String elementID) {
// click element here
}
@Test
public void changeTextOnLastClicked( @Optional String textToType) {
// keyboard action here
}
@Test
void clickButtonByID(@Optional String buttonID) {
// click button by I
}
Используя эту практику - если структура формы изменится в будущем - будет легко переставить тест.