Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class TodoMvcPage {
- /*
- Пейдж-модули удобно называть без слова Page в конце
- потому что если ты будешь использовать несколько пейдж-модулей в одном тесте
- то желательно обращаться к их методам через имя класса пейдж-модуля
- чтобы видеть, где с каким пейджом идет работа
- и когда ты будешь писать
- TodoMVCPage.givenAtAll()
- то это явно не так прикольно как
- TodoMVC.givenAtAll()
- правда?
- (так обращаться - важно, когда есть несколько пейджей,
- а если он один - то можно без ущерба для точности -
- заимпортить статически все методы и при вызове - не указывать им класса пейдж-модуля)
- вот это Page в конце - это дань общим conventions (или общепринятым предпочтениям)
- при именовании классов в мире ООП
- ми же тут юзаем подход "Модульного Программирования", потому тут этого "лишнего слова"
- не нужно
- А то, что это все же пейдж - скажет нам имя пекеджа - pages
- */
- /*
- по поводу private - см ревью к прошлой работе
- */
- *******************************
- public class TaskOperationsAtActiveFilterTest extends BaseTest {
- /*
- в имени тест-класса - написали - что операции с тасками тестим
- т е - про таски - написали
- */
- @Test
- public void editTask() {
- /*
- и тут опять повторяемся про таску - в имени метода
- */
- ...
- edit("v", "v edited");
- ...
- }
- ...
- @Test
- public void confirmEditByPressTab(){
- /*
- а тут - уже по-другому )
- про таску в имени не пишем
- понятно, почему - если вспомнить про имена методов пейджей
- но - если не вспомнить и если не знать - то ...
- сложно будет понять)
- */
- ...
- editByPressTab("k", "k edited");
- ...
- }
- /*
- тут у нас возникла проблемка)
- имена методов из пейдж-модуля и тест-методов - зачастую одинаковы)
- ты выкрутилась - в таких случаях добавила слово Task в имя метода
- мне кажется этот вариант не очень хорошим
- тут у нас - из-за статического импорта -
- в одной области видимости - и методы пейджа и методы тест-класса
- и если они будут называться похоже - очень легко запутаться и вызвать не тот метод
- например - пришем тест-метод delete
- и вместо вызова delete из пейджа - вызываем тот же тест-метод, что и пишем
- понятно - что имена методов отличаются - но не настолько - чтоб это как-то сильно бросалось в глаза
- вижу пару решений
- имена тест-методов - начинать с test
- тогда будет гораздо заметнее и понятнее разница между методами пейджа и тест-методами
- не использовать import static
- TodoMvc.delete(...) - так вызываем метод пейдж-модуля
- получаем разные области видимости имен
- и тоже уходим от проблемы
- твой вариант мне нравится меньше
- потому что можно не догадаться - где чей метод
- разница в написании - не говорит нам об этом
- поправь одним из описанных способов)
- */
Advertisement
Add Comment
Please, Sign In to add comment