Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class BaseTest {
- ...
- @After
- public void clear() {
- executeJavaScript();
- }
- /*
- не надо портить универсального предка тест-класса - деталями про наше приложение
- очистку локалсториджа - уже в тест-классе делай
- там расположи этот метод
- */
- *************
- public class ToDoMvcTest extends BaseTest {
- @Before
- public void openUrl(){ visit();}
- /*
- открываешь урл - в тест-классе
- вот и локалсторидж очищай в тест-классе
- погугли про Single Responsibility
- и не забывай про форматирование кода
- выдели код + code->reformat code
- касается всего кода
- */
- ***********************
- public static void executeJavaScript(){
- ((JavascriptExecutor) getDriver()).executeScript("localStorage.clear()");
- }
- /*
- нам ведь далеко не всегда нужно выполнять команду "localStorage.clear()"
- для тестирования этого приложения - да - "localStorage.clear()"
- а для чего-то другого - другую
- разумно иметь метод для выполнения джаваскрипт-команд - более универсальный
- добавь методу параметр String jsCommand
- и вызывать метод будешь
- executeJavaScript("localStorage.clear()")
- сразу 2 выигрыша
- метод - универсальнее
- вызов - нагляднее
- кстати, если хочешь, посмотри как реализована такой же метод в Selenide
- если понравится вариант - примени у себя
- */
- ****************************
- actualTexts.clear();
- actualTexts = getTexts(listElements);
- /*
- чистить список перед его инициализацией - смысла нету
- очистили все что было, а потом создали заново
- вывод - раз создаем заново, можно не чистить
- */
- *********************
- sizeOfVisible
- /*
- Мы в этом кондишене - не проверяем тексты тасок, и не выводим их
- что как раз ОК
- значит - можно и не получать их
- */
- *************************
- public static WebElement $(ExpectedCondition<WebElement> conditionToWaitParentElement){
- return assertThat(conditionToWaitParentElement);
- }
- /*
- В данном случае ни о каких родительских элементах речи не идет
- параметр метода надо бы переименовать
- conditionToWaitElement
- */
- *************************
- http://joxi.ru/GrqLOX3SNoQ0oA
- /*
- все же подправь в прошлом проекте
- и сюда добавь - методы, возвращающие By
- https://bitbucket.org/Museua/modularsimple/src/899dab6eb92044c7f420e463f9aa4c22290f4727/src/main/java/gmail/core/ConciseAPI.java?at=master&fileviewer=file-view-default
- 1 - доработай
- как искать элемент по title - у тебя же есть в пейджах gmail-овских
- (можно сделать - чтобы метод всехна искал по условию - в тайтле содержится ..., а можно быть точнее
- и создать byTitle, byExactTitle)
- 2 - предлагаю убить
- не забудь и предыдущее решение обновить
- согласна, тут вроде бы этого и не надо
- но это такие вещи, которые могут тебе пригодиться
- так что подравняй
- да и в предыдущем проекте надо бы подправить)
- */
- **************************************
- public static WebElement startEdit(String oldTaskText, String newTaskText) {
- doubleClick($(listElementWithText(tasks, oldTaskText), "label"));
- $(listElementByCssClass(tasks, "editing"), ".edit");
- /*
- в этой строке - мы получиль вебэлемент
- но ничего с полученным делать не стали
- ниже - заново его получаем
- или за счет этой строки - упрости следующую
- или убирай ее, как ненужную
- я бы убрала)
- */
- return setValue($(listElementByCssClass(tasks, "editing"), ".edit"), newTaskText);
- }
- *********************************
- $(byCss("#toggle-all"))
- или
- $("#toggle-all")
- /*
- второй вариант - все же попроще)
- просмотри код и упрости где это возможно
- */
- ************************
- public static void assertTasksAre(String... tasksText) {
- /*
- подправь имя параметра
- мы ждем не текст, а текстЫ тасок
- */
Advertisement
Add Comment
Please, Sign In to add comment