Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ответы на вопросы
- https://docs.google.com/document/d/1ZlIcbBe8RYBrwlVSbPQhav701VZRduP_xYerFpPDmgA/edit#
- Из smoka убрать edit, cancel edit, delete.
- /*
- да
- */
- И вынести их в фичатест , хотя edit, cancel edit уже вынес по твоему комментарию от 01.01.
- Т.е. только delete ?
- /*
- будешь ссылаться на комментарии - приводи их
- чтобы мне не приходилось их искать
- я не всегда могу догадаться - по твоим выводам - на каких моих рекомендациях они базируются
- нужно вынести это
- не в один фиче-тест
- а в фиче-тестЫ
- каждая фича = свой тест-метод
- */
- (Новый e2e я реализовывать не хочу, ты меня не так поняла, я хотел и этот не трогать, не обращая внимание на покрытие.)
- /*
- новый е2е - и не нужен
- задача была в другом
- этот трогать - придется
- я предложила путь
- при котором это сделать максимально просто
- обращать внимание на покрытие нужно
- это - часть задачи
- */
- *****************************************************
- Переделать матрицу покрытия в соотв с п.1. Т.е. edit, cancel edit, delete из smoke в feature с сохранением приоритета
- /*
- Переделать матрицу покрытия - слишком громкое название для работ с тест-планом
- всех переделок - подправить - что где покрыто
- структурно - та же таблица
- приоритеты - как были так и остались
- изменится - только информация о покрытии, и то не много
- Т.е. edit, cancel edit, delete из smoke в feature с сохранением приоритета = да
- */
- ********************************************
- Фичатесты –убрать openPage поскольку он уже в @Before (догадался)
- /*
- да
- это было в видео
- */
- ****************************************
- “я бы вместо
- startEdit("123", "123 edited");
- сlickOnBody();
- реализовала метод startEditThenClickOutside”
- Так?
- private void startEditThenClickOutside(String fromTaskText, String toTaskText){
- startEdit( fromTaskText, toTaskText);
- $("body").click();
- }
- или так?
- private void startEditThenClickOutside(String fromTaskText, String toTaskText){
- startEdit( fromTaskText, toTaskText);
- clickOnBody();;
- }
- где
- private void clickOnBody() {
- $("body").click();
- /*
- твой первый вариант
- вот этот:
- */
- private void startEditThenClickOutside(String fromTaskText, String toTaskText){
- startEdit( fromTaskText, toTaskText);
- $("body").click();
- }
- *********************************************
- Теперь что не понял
- 1- ? ( не догадался)
- 2-? Заполнить квадрант 2ками ?
- /*
- 1
- я писала
- в фиче-тесте - разумно покрыть в рамках проверок - второй проверкой
- items left
- это нам ничего не стоит
- это практически не усложнит тест
- но уточнить проверки и улучшит покрытие
- обозначь - что покроешь items left после віполнения тестируемого действия
- по возможности - так поступай в любоим из фиче-тестов
- это же - обозначь в тест-плане
- 2
- в рамках smoke - этого вообще покрывать не нужно
- раз решил - настаивать не буду
- в КОДЕ - обозначь эти методы как extra coverage
- перед такими тест-методами - напиши один общий комментарий
- на уровне тест-плана - ничего не меняй
- разве что items left допокрой
- */
- *******************************************
- Я проворонил и об этом раньше упоминалось? или это что-то новенькое ?
- 3- по реализации редактирования - остались вопросы
- http://pastebin.com/Luk6A4WP
- строки 49-85
- в чем суть этого действия - startEditThenCancel
- мы уже вввели ноый текст
- и нажали Escape
- и, несмотря на введенный новый текст, остались со старым текстом = отменили редактирование
- а при такой реализации, как у тебя, даже если Enter нажать = текст таски не изменится
- потому что мы его и не меняли
- это мы должны делать и при выполнении startEditThenCancel:
- tasks.findBy(cssClass("editing")).find(".edit").setValue(toTaskText)
- значит = это тоже повторяющееся действие
- Верни ввод нового текста - в startEditThenCancel
- И в метод, который будет выполнять общие действия - включи все общие действия
- и пусть метод возвращает SelenideElement = элемент, в котором вводили новый текст
- это нужно - чтобы для этого элемента - далее вызвать pressEnter() или pressEscape();
- получишь
- */
- private void startEdit(String fromTaskText, String toTaskText){
- tasks.find(exactText(fromTaskText)).doubleClick();
- return tasks.findBy(cssClass("editing")).find(".edit").setValue(toTaskText);
- }
- private void edit(String fromTaskText, String toTaskText) {
- startEdit(fromTaskText, toTaskText).pressEnter();
- }
- ...
- /*
- метод элемента(SelenideElement) setValue - возвращает этот же элемент
- потому - мы смогли написать вот так - return tasks.findBy(cssClass("editing")).find(".edit").setValue(toTaskText);
- зажми ctrl и наведи курсор мыши на setValue - увидишь сигнатуру метода
- такой прием поможет тебе понять, как построить свой код, как использовать тот или иной метод
- Последняя версия выглядела так ( что не так - так и не понял)
- private SelenideElement startEdit(String fromTaskText, String toTaskText) {
- tasks.find(exactText(fromTaskText)).doubleClick();
- return tasks.findBy(cssClass("editing")).find(".edit").setValue(toTaskText);
- }
- private void edit(String fromTaskText, String toTaskText) {
- startEdit(fromTaskText, toTaskText).pressEnter();
- }
- private void startEditThenCancel(String fromTaskText, String toTaskText) {
- startEdit(fromTaskText, toTaskText).pressEscape();
- }
- /*
- в теперь приведенной версией - как раз все в порядке
- посмотри на тот комментарий, что я сделала
- я не эту версию кода комментировала
- а другую
- вот эту (http://pastebin.com/Luk6A4WP, строки 36-48):
- */
- private void findTaskThenDoubleClick(String fromTaskText){
- tasks.find(exactText(fromTaskText)).doubleClick();
- }
- private void edit(String fromTaskText, String toTaskText) {
- findTaskThenDoubleClick(fromTaskText);
- tasks.findBy(cssClass("editing")).find(".edit").setValue(toTaskText).pressEnter();
- }
- private void startEditThenCancel(String fromTaskText, String toTaskText) {
- findTaskThenDoubleClick(fromTaskText);
- tasks.findBy(cssClass("editing")).find(".edit").pressEscape();
- }
- /*
- почему теперь оказалось, что твоя реализация не такая, какую я комментировала
- я уже разбираться не буду - жалко времени
- обычно в ревью - я указываю код, по которому есть вопросы,
- и ниже - комментирую его
- обращай внимание и на приведенный код
- вопросы будут сниматься
- */
Advertisement
Add Comment
Please, Sign In to add comment