Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class TodoMvcTest {
- @Test
- public void manageTasks(){
- open("https://todomvc4tasj.herokuapp.com/");
- add("1", "2");
- /*
- если бы у тебя была одна таска - "2"
- далее можно было бы использовать действия для таски "2" - в качестве неявных проверок
- рекомендую добавить одну таску и использовать неявные проверки - как ты и реализовала
- еще совет
- используй в качестве текстов тасок - буквы - a, b, c ...
- так легче будет выделить - текстовую информацию от числовой
- код будет проще читаться
- если думаешь - что add("1", "2") - это одна операция
- то нет)
- это - 2 операции
- да, действительно, добавлением одной таски мы не обойдемся
- потому - лучше тут одну добавить
- и позже еще одну
- так мы наиболее эффективно используем неявные проверки
- */
- edit("2", "2 edited");
- toggle("2 edited");
- assertTasksAre("1", "2 edited");
- switchActiveFilter();
- /*
- методы перехода по фильтрам - верно преобразовала )
- а вот имена - можно проще)
- filterActive()
- что делаем - фильтруем
- ну а далее - детализируем...
- если будешь переименовывать - это должно коснуться всех 3-х методов для переходов по фильтрам
- как переименовать метод/класс/переменную/параметр
- https://docs.google.com/document/d/13dNyFGbI7mV22UUhH8E0LJ7SzabAmX7Bw7VCHScYfiU/edit#bookmark=id.uaiq15o3yjor
- если ранее добавить только одну таску - тут получишь пустой список
- этот факт придется проверить
- самое время добавить еще одну таску)
- и продолжить использовать неявные проверки
- */
- /*
- сценарий - оптимальный
- тут все ок
- */
- ***************************
- private void toggle(String taskText) {
- private void activate(String taskText){
- /*
- по этим методам - окончательно определись
- с учетом нашей переписки в слеке
- имя метода должно точно отражать - что метод делает
- в какой бы тестовой ситуации его ни вызвали
- и код методов должен быть DRY
- (почитай про этот принцип в faq)
- */
- *******************************
- private void edit(String oldTaskText, String newTaskText){
- private void cancelEdit(String oldTaskText, String newTaskText){
- /*
- setValue(newTaskText + Keys.ESCAPE)
- можно переписать как
- setValue(newTaskText).pressEscape()
- посмотри на код методов - много повторений - код не DRY
- https://docs.google.com/document/d/13dNyFGbI7mV22UUhH8E0LJ7SzabAmX7Bw7VCHScYfiU/edit#heading=h.lzxge2s5ilgv
- Вот эту повторяющуюся часть
- tasks.....doubleClick();
- tasks.....setValue(newTaskText)
- Вынеси в метод xxx(...) возвращающий SelenideElement = элемент,
- который использовали для ввода нового текста
- Чтобы далее его переиспользовать - xxx(...).pressEscape()
- Сразу подумай над именем метода - это еще не радактирование (т к не было подтверждения)
- а только начало/старт редактирования
- */
- **************************
- private void assertItemsLeft(Integer quantityTasks){
- /*
- реализация - ок
- можно уточнить селектор "#todo-count>strong"
- про имя параметра
- можно использовать лаконичный вариант Integer count - в сочетании с именем метода достаточно понятно
- а можно - подробнее - Integer activeTasksCount, к примеру
- */
Advertisement
Add Comment
Please, Sign In to add comment