yashaka

Untitled

Sep 18th, 2016
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.67 KB | None | 0 0
  1. в какой то момент когда ты найдешь нужный элемент - это input с классом .edit
  2. ты построешь такую вот цепочку:
  3.  
  4. tasks.find(exactText(taskText)).doubleClick().find(".edit").setValue(taskNew).pressEnter()
  5.  
  6. она тоже не будет работать...
  7. что бы понять почему - нужно знать как работает селениде
  8.  
  9. он же динамический - он постоянно переискивает элементы перед любым действием - что бы работать с их последней версией
  10. они ведь могут меняться... пропадать, появлятся...
  11.  
  12. так вот это означает, что вот эта строка кода:
  13.  
  14. tasks.find(exactText(taskText)).doubleClick().find(".edit").setValue(taskNew).pressEnter()
  15.  
  16. на самом деле превращается внутри селениде вот в такие:
  17.  
  18. tasks.find(exactText(taskText)).doubleClick()
  19. tasks.find(exactText(taskText)).find(".edit").setValue(taskNew)
  20. tasks.find(exactText(taskText)).find(".edit").pressEnter()
  21.  
  22. а теперь подумай что происходит после вот этой фактической строки:
  23.  
  24. tasks.find(exactText(taskText)).doubleClick()
  25.  
  26. посмотри внимательно на юай - он ведь меняется
  27. разве ты теперь видишь тот лейбл что бы раньше?
  28. именно в нем живет текст, по которому ты раньше совершал поиск: tasks.find(exactText(taskText))
Add Comment
Please, Sign In to add comment