Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private SelenideElement startEdit(String oldTaskText, String newTaskText){
- tasks.find(exactText(oldTaskText)).doubleClick();
- return(tasks.findBy(cssClass("editing")).$(".edit").setValue(newTaskText));
- /*есть вторая версия реализации, c переменной; так лучше читается что возвращает метод, но зато лишние строки кода. Стоит ли так?
- SelenideElement editedTaskText=tasks.findBy(cssClass("editing")).$(".edit").setValue(newTaskText));
- return = editedTaskText;
- */
- }
- /*
- и текущая версия кода - достаточно хороша
- единственное - реформатируй код
- сейчас он хуже читается из-за не стандартного форматирования
- в IntelIJ Idea
- выдели код
- в меню(верхнем) - выбери пункт - Code->Reformat code
- советую завести привычку - в конце работы - обязательно форматировать код
- вероятнее всего, ты будешь работать в команде, и твой код будут смотреть другие специалисты
- им проще смотреть на стандартно отформатированный код (как правило)
- иногда у команды есть свои правила форматирования, которые чуть отличатся от стандартных.
- Если все сделано по уму, то у всех членов команды в IntelIJ Idea именно так и настроено форматирование кода.
- Т е - все равно - привычка реформатировать код - нужна
- https://www.jetbrains.com/help/idea/2016.3/reformatting-source-code.html
- что то второй версии кода
- то да, можно и так
- но тогда лучше так
- tasks.find(exactText(oldTaskText)).doubleClick();
- SelenideElement inputEdit = tasks.findBy(cssClass("editing")).$(".edit");
- inputEdit.setValue(newTaskText));
- return inputEdit;
- получили элемент
- ввели ему новое значение
- вернули
- обрати внимание на синтаксис return
- https://docs.oracle.com/javase/tutorial/java/javaOO/returnvalue.html
- и на имя элемента inputEdit - оттолкнулись от тех терминов, которые уже используются на уровне HTML кода страницы
- если есть какое-то название на User Interface - лучше конечно его брать
- но и вот такой поход - тоже даст наглядное и понятное имя
- editedTaskText - для веб элемента - может путать
- читая такое имя - я ожидаю что это строка
- какой вариант лучше
- я бы выбрала первый - который в 2 строки
- мне кажется - сложность еще приемлемая)
- но вообще - это зависит и от субъективного взгляда на вещи
- и от правил, принятых в конкретной команде
- так что - и второй вариант имеет право на жизнь)
- */
- *****************************************
- private void assertItemsCountIs(int tasksLeftInt) {
- String tasksLeftString = Integer.toString(tasksLeftInt);
- $("#todo-count>strong").shouldHave(exactText(tasksLeftString));
- }
- /*
- и тут бы я обошлась без переменной и другим более лаконичным параметром метода)
- если имя метода достаточно поясняет - можно быть не таким подробным в имени параметра
- я бы его назвала count, с учетом имени метода - все понятно
- а если быть таки подробным - то тогда бы я не стала посторять сказанное в имени метода
- а уточнила - activeTasksCount
- $("#todo-count>strong").shouldHave(exactText(Integer.toString(count)));
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement