Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [role='main'] tr[id]
- /*
- можно чуть лаконичнее локатор написать
- [role='main'] .za
- */
- ***********************
- public static void assertMail(String text)
- /*
- метод будет универсальнее если будет 2 параметра
- assertMail(int index, String text)
- для бОльшего количества вариантов подойдет
- */
- *********************************
- public static void assertMails(int number, String text){
- /*
- как думаешь - а можно проверить таким методом - что мейлов = 5 штук и вот с такими
- 5-ю текстами - "1", "2", "3", "4", "5"
- ?
- чтобы мочь передать не строку, а производльное кодичество строк - вспомни -
- как мы параметры методам объявляли
- кстати - кондишен texts - тоже может принять в качестве параметров произвольное количество строк
- exactTexts & texts - работают очень похоже
- внутри такого кондишена сначала сверяется количество элементов коллекции и переданных текстов
- если количества не совпадают - проверка не прошла
- далее попарно сверяются тексты элементов с переданными текстами - нулевой с нулевым, первый с первым и т д
- в exactTexts - тексты сверяются на равенство
- в texts - на вхождение (в текст элемента входит соответствующий переданный текст)
- таким образом - проверка кондишена texts - позволит проверить количество, порядок и сами тексты
- вспомни - как был организован метод assertTasks для тестирования todoNMVC
- и примени тут эти приемы)
- */
- ******************************************
- public static void goToSent(){
- $("[role='navigation']").find(withText("Sent")).click();
- }
- public static void goToInbox(){
- $("[role='navigation']").find(withText("Inbox")).click();
- }
- /*
- можно и так)
- https://docs.google.com/document/d/13dNyFGbI7mV22UUhH8E0LJ7SzabAmX7Bw7VCHScYfiU/edit#bookmark=id.4i6i27d7lwn4
- в общем-то в рамках этого пейджа разумно вынести в переменную такой элемент $("[role='navigation']")
- withText - не скрывай - что это метод класса By
- лучше - By.withText
- строки 79-88 прошлого ревью
- */
- ************************************
- public class GmailTest {
- Gmail gmail = new Gmail();
- Mail mails = new Mail();
- Menu menu = new Menu();
- /*
- посмотри на классы пейджей
- все методы и переменнай объявлены статическими, имена классов - как для пейджей-модулей
- а тут - ты решила что делаем таки пейджи-объекты
- если нравится идей с пейджами-модулями - так используй пейджи именно как пейджи-модули
- поскольку пейджей несколько - вызываем методы Имя класса пейджа-модуля . Имя метода
- если хочешь вариант с пейджами-объектами
- так не надо объявлять методы пейджей статическими и
- название классов пейджей надо подправить (должно заканчиваться на Page)
- */
- private String topic;
- /*
- логично думать - что пейджи пригодятся для всех тест-методов класса
- потому их и объявляют как поля класса
- а вот эта переменная - она нужна только в конкретном тест-методе
- логично ее там же объявить и инициализировать
- */
- @Before
- public void setup(){
- Configuration.timeout = 15000;
- /*
- я бы таймаут объявляла в BeforeClass методе)
- тоже - наверняка это касается всех методов этого класса, сколько бы их ни было
- так почему не сделать это единожды?
- */
- topic = createTopic();
- /*
- вот этому - место в тест-методе, где нужен уникальный топик
- далеко не факт - что в каждом из тест-методов класса нам такое понадобится
- что вынесла в метод возню с уникальным топиком - это разумно)
- только лучше универсальнее реализовать
- прокомменчу возле метода createTopic()
- */
- }
- ********************************************
- public String createTopic(){
- DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
- Date date = new Date();
- return dateFormat.format(date);
- }
- /*
- на самом деле, метод, генерирующий уникальную строку - полезный метод)
- и не обязательно только в контекст генерации уникального топика
- разумнее реализовать универсальный метод generateUniqueText(String prefix)
- который будет возвращать строку prefix+уникальная часть
- а раз этот метод универсальный
- то расположи его как статический в классе-контейнере универсальных методов Helpers
- (создай такой и подумай - где в структуре проекта его лучше расположить)
- */
Advertisement
Add Comment
Please, Sign In to add comment