julia_v_iluhina

Untitled

Jan 7th, 2017
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 7.79 KB | None | 0 0
  1. У меня на firefoxe версии 32.0 тесты прошли.
  2. /*
  3.     вот тут - можно прочитать больше по версиям
  4.     https://docs.google.com/document/d/1fodHkTunrtit-EiMBrb91Mc6rbnQ5LwtBL9rISQveKA/edit?usp=sharing
  5.  
  6.     и еще - новость
  7.     Selenide User Guide
  8.     https://selenide.gitbooks.io/user-guide/content/ru/
  9.     вот тут можно побольше почитать о Selenide
  10. */
  11. ***************************************
  12. public class ToDoMVCTest {
  13.  
  14.     @Test
  15.     public void testManipulateTasks() {
  16.         open("https://todomvc4tasj.herokuapp.com/");
  17.         /*
  18.             используй пропуски строк - для деления кода на блоки
  19.             каждый блок - своя цель, своя задача
  20.             вот тут стоит пропустить строку
  21.         */
  22.         $("#new-todo").setValue("task 1").pressEnter();
  23.         $("#new-todo").setValue("task 2").pressEnter();
  24.         $("#new-todo").setValue("task 3").pressEnter();
  25.         $("#new-todo").setValue("task 4").pressEnter();
  26.         /*
  27.                   добавление тасок - еще один пример блока кода
  28.                   его тоже разумно отделить от дальнейшего кода пропуском строки
  29.                   думаю, принцип понятен)                       
  30.  
  31.                   тест - это не только нужные действия
  32.                        это еще и проверки результатов действий
  33.                        и правильнее - не откладывать проверки
  34.                        а делать их сразу после каждого действия
  35.                        т к именно это позволит нам понять - что конкретно работает не так, как нужно
  36.  
  37.                        причем - проверки должны касаться не только таски, с которой мы непосредственно работали
  38.                        а всех тасок в списке
  39.                        ведь ошибка может проявляться и так - после работы с одной таской - состояние другой(или других) тасок тоже как-то портится
  40.  
  41.                        есть причины и/или цели
  42.                        по которым мы можем отложить проверку на несколько шагов
  43.                        вот, например выше - мы выполнили проверку после добавления всех 4-ех тасок
  44.                        даже если тест упал бы на той проверке - мы бы могли быстро понять - с чем у нас проблема - с добавлением тасок
  45.                        т е - точности мы не потеряли, проверив состояние списка тасок аж после добавления 4-ой таски
  46.  
  47.                        пока - принимая решение - делать ли проверку или ее отложить - руководствуйся вот такими соображениями
  48.  
  49.                        но в целом правило такое - проверки нужно делать сразу после выполненного действия
  50.         */
  51.         $ (".active[data-index='1'] input").click();
  52.         /*
  53.             селектор можно подобрать и лучше
  54.  
  55.             во-первых - тебе понадобится селектор для колекции = все таски в списке
  56.             http://joxi.ru/1A5zNxjunnN8Kr
  57.             чтобы проверить состояние списка тасок
  58.  
  59.             и тут - нам нужно доступиться к такой-то таске из списка
  60.             разумнее оперировать тем же селектором, что и для коллекции тасок
  61.             лишь уточнившись сначала - до такой-то таски, затем до нужного тебе внутреннего элемента таски
  62.  
  63.             тут уточняться до .active - не нужно
  64.             потому что в данном случае - это безразлично
  65.             в каком статусе сейчас таска
  66.             мы ведь просто работаем с такой-то по номеру таской
  67.  
  68.             что касается [data-index='1'] - тоже не лучший вариант
  69.             не самый наглядный
  70.             посмотри что будет происходить с атрибутом data-index тасок
  71.             если выполнить следующие действия
  72.                 добавь 3 таски
  73.                 удали среднюю
  74.                 добавь еще одну
  75.             и посмотри на HTML, на атрибут data-index всех тасок
  76.  
  77.             лучше - обратись к такой-то по счету таске
  78.             у css селекторов есть такой синтаксис
  79.             http://www.w3schools.com/cssref/css_selectors.asp
  80.             далее - будем еще более точными, но то попозже
  81.             для этой версии - достаточно получить такую-то таску в списке
  82.            
  83.             по input
  84.             сравни input и .toggle
  85.             какой вариант нагляднее?
  86.             а описали мы один и тот же элемент)
  87.             старайся выбирать те свойства элемента, которые наиболее наглядно его описывают
  88.  
  89.             $ (...)
  90.             или
  91.             $(...)
  92.             обычно - не делают пробела между именем метода и набором его параметров
  93.  
  94.             чтоб придерживаться стандартного форматирования -
  95.             в IntelIJ Idea выдели текст
  96.             и в верхнем меню выбери code->reformat code
  97.             https://www.jetbrains.com/help/idea/2016.3/reformatting-source-code.html
  98.  
  99.             $ (".active[data-index='1'] input").click(); - в этой строчке -
  100.             таска не удаляется
  101.             а просто комплитится
  102.             по условию задания - нужно именно удалить таску
  103.             да, там есть над чем подумать)
  104.             посмотри в faq
  105.             https://docs.google.com/document/d/10qSwWTQ6pGfVZSwOes-1QSmdflMiGD2U_y53VHq2m20/edit#
  106.  
  107.         */
  108.         $(".completed[data-index='1'] button").click();
  109.         /*
  110.             небольшая подсказка - кнопка удаления теперь видна - не потому что таска ранее закомпличена
  111.             а потому что курсор мыши наведен на эту таску
  112.             понаблюдай - наведи курсор мыши на таску - этого достаточно - чтоб кнопка .destroy
  113.             стала видимой
  114.         */
  115. /*
  116.     практически каждый из комментариев - можно применить несколько раз)
  117. */
Advertisement
Add Comment
Please, Sign In to add comment