Advertisement
Guest User

Untitled

a guest
Jun 15th, 2019
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.42 KB | None | 0 0
  1. 1) Primeiro iremos verificar os elementos com Assert(Afirmação).
  2. 1)assert_all_of_selectors
  3. Afirma que todos os seletores fornecidos estão presentes na página ou nos descendentes do nó atual.
  4.  
  5.  
  6. 2)assert_none_of_selector
  7. Afirma que nenhum dos seletores fornecidos está presente na página ou nos descendentes do nó atual.
  8.  
  9.  
  10. 2)assert_matches_selector
  11. Afirma que o current_node corresponde a um determinado seletor.
  12.  
  13.  
  14. 4)assert_selector
  15. Afirma que um determinado seletor está na página ou um descendente do nó atual.
  16.  
  17.  
  18. 5)assert_text
  19. Afirma que a página ou o nó atual possui o conteúdo de texto especificado, ignorando quaisquer tags HTML.
  20.  
  21.  
  22. 2) Agora afirmando que o elemento não existe na tela com o Assert_not(afirmar que não)
  23. 1)assert_not_matches_selector
  24. Afirma que o current_node não corresponde a um determinado seletor.
  25.  
  26.  
  27. 2)assert_no_selector
  28. Afirma que um determinado seletor não está na página ou descendente do nó atual.
  29.  
  30.  
  31. 3)assert_no_text
  32. Afirma que a página ou o nó atual não tem o conteúdo de texto especificado, ignorando quaisquer tags HTML.
  33.  
  34.  
  35. 3) Verificando elemento com o “Has(Tem)”.
  36. 1)has_checked_field?
  37. Verifica se a página ou o nó atual tem um botão de opção ou caixa de seleção com o rótulo, valor ou ID fornecido, que está atualmente marcado.
  38.  
  39.  
  40. 2)has_select?
  41. Verifica se a página ou o nó atual tem um campo de seleção com o rótulo, o nome ou o ID fornecido.
  42.  
  43.  
  44. 3)has_selector?
  45. Verifica se um determinado seletor está na página ou um descendente do nó atual.
  46.  
  47.  
  48. 4)has_table?
  49. Verifica se a página ou o nó atual possui uma tabela com o ID ou a legenda especificada
  50.  
  51.  
  52. 5)has_text?
  53. Verifica se a página ou o nó atual tem o conteúdo de texto especificado, ignorando todas as tags HTML.
  54.  
  55.  
  56. 6)has_unchecked_field?
  57. Verifica se a página ou o nó atual tem um botão de opção ou caixa de seleção com o rótulo, valor ou ID fornecido, que está atualmente desmarcado.
  58.  
  59.  
  60. 7)has_xpath?
  61. Verifica se uma determinada expressão XPath está na página ou um descendente do nó atual.
  62.  
  63.  
  64. 8)has_button?
  65. Verifica se a página ou o nó atual possui um botão com o texto, valor ou id fornecido.
  66.  
  67.  
  68. 9)has_css?
  69. Verifica se um determinado seletor de CSS está na página ou um descendente do nó atual.
  70.  
  71.  
  72. 10)has_field?
  73. Verifica se a página ou o nó atual tem um campo de formulário com o rótulo, o nome ou o ID fornecido.
  74.  
  75.  
  76. 11)has_link?
  77. Verifica se a página ou o nó atual tem um link com o texto ou o ID fornecido.
  78.  
  79.  
  80. 4) Verificando elementos que não estão na tela com o “Has_no(Não Tem)”.
  81. 1)has_no_checked_field?
  82. Verifica se a página ou o nó atual não tem nenhum botão de opção ou caixa de seleção com o rótulo, valor ou ID fornecido, que está atualmente marcado.
  83.  
  84.  
  85. 2)has_no_select?
  86. Verifica se a página ou o nó atual não tem campo de seleção com o rótulo, nome ou id fornecido.
  87.  
  88.  
  89. 3)has_no_selector?
  90. Verifica se um determinado seletor não está na página ou um descendente do nó atual.
  91.  
  92.  
  93. 4)has_no_table?
  94. Verifica se a página ou o nó atual não possui tabela com o ID ou legenda especificada.
  95.  
  96.  
  97. 5)has_no_text?
  98. Verifica se a página ou o nó atual não possui o conteúdo de texto especificado, ignorando qualquer tag HTML e normalizando o espaço em branco.
  99.  
  100.  
  101. 6)has_no_unchecked_field?
  102. Verifica se a página ou o nó atual não tem botão de opção ou caixa de seleção com o rótulo, valor ou ID fornecido, que está atualmente desmarcado.
  103.  
  104.  
  105. 7)has_no_xpath?
  106. Verifica se uma determinada expressão XPath não está na página ou descendente do nó atual.
  107.  
  108.  
  109. 8)has_no_button?
  110. Verifica se a página ou o nó atual não possui um botão com o texto, valor ou id fornecido.
  111.  
  112.  
  113. 9)has_no_css?
  114. Verifica se um determinado seletor de CSS não está na página ou um descendente do nó atual.
  115.  
  116.  
  117. 10)has_no_field?
  118. Verifica se a página ou o nó atual não possui um campo de formulário com o rótulo, nome ou ID fornecido.
  119.  
  120.  
  121. 11)has_no_link?
  122. Verifica se a página ou o nó atual não tem link com o texto ou o ID fornecido.
  123.  
  124.  
  125. 5) Verificando elementos com o Matches(Combina).
  126. 1)matches_css?
  127. Verifica se o nó atual corresponde ao seletor de CSS especificado.
  128.  
  129.  
  130. 2)matches_selector?
  131. Verifica se o nó atual corresponde ao seletor especificado.
  132.  
  133.  
  134. 3)matches_xpath?
  135. Verifica se o nó atual corresponde a determinada expressão XPath.
  136.  
  137.  
  138. 6) Verificando os elementos não combinam com o Not_Matches(Não Combina).
  139. 1)not_matches_css?
  140. Verifica se o nó atual não corresponde ao seletor de CSS fornecido.
  141.  
  142.  
  143. 2)not_matches_selector?
  144. Verifica se o nó atual não corresponde ao dado seletor. O uso é idêntico ao has_selector ?.
  145.  
  146.  
  147. 3)not_matches_xpath?
  148. Verifica se o nó atual não corresponde à expressão XPath fornecida.
  149.  
  150.  
  151. Opções:
  152. Esses métodos também contém opções para ajudar na busca desses elementos:
  153. count(Integer)
  154. Número exato de elementos que se espera encontrar.
  155.  
  156.  
  157. maximum(Integer)
  158. Número máximo de elementos que se espera encontrar.
  159.  
  160.  
  161. minimum(Integer)
  162. Número mínimo de elementos que se espera encontrar.
  163.  
  164.  
  165. between(Range)
  166. O número de correspondências encontradas deve estar dentro do intervalo determinado
  167.  
  168.  
  169. exact(Boolean)
  170. Controlar se as expressões ‘is’ no determinado Xpath correspondem exatamente ou parcialmente.
  171.  
  172.  
  173. wait(Integer)
  174. Por padrão o wait usa o Capybara.defaullt_max_wait_time como tempo padrão.Mas você pode passar o tempo para esperar que as expectativas de contagem de elementos se tornem verdadeiras
  175.  
  176.  
  177.  
  178. Agora vamos falar de espera de elementos na tela com SitePrism:
  179. O Site Prism nos temos alguns métodos para esperar elementos estarem na tela:
  180.  
  181. 1)wait_for_<elemento> (obs: está descontinuado a partir da versão 3.0.0 do Site_Prism)
  182. Espera que um elemento esteja presente na página;
  183.  
  184. 2)wait_until_<elemento>_visible
  185. Espera que um elemento até ele ficar visível na página;
  186.  
  187. 3)wait_until_<elemento>_invisible
  188. Espera que um elemento esteja até ele ficar invisível na página;
  189.  
  190. 4)has_<elemento>
  191. Verifica que o elemento esteja na tela.
  192.  
  193. 5)has_no_<elemento>
  194. Verifica que o elemento não esteja na tela.
  195.  
  196.  
  197. Agora vamos falar de Verificar elementos com RspecMatchers:
  198. have_all_of_selectors ⇒ Verifica se os elementos correspondentes a um grupo de seletores existem .
  199.  
  200. have_button ⇒ Verifica se a página ou o nó atual possui um botão com o texto, valor ou id fornecido.
  201.  
  202. have_checked_field ⇒ Se a página ou o nó atual tiver um botão de opção ou uma caixa de seleção com o rótulo, valor ou ID fornecido, que está marcado no momento.
  203.  
  204. have_css ⇒ Verifica se um determinado seletor de CSS está na página ou um descendente do nó atual.
  205.  
  206. have_current_path ⇒ Afirma que a página tem o caminho fornecido
  207.  
  208. have_field ⇒ Verifica se a página ou o nó atual tem um campo de formulário com o rótulo, o nome ou o ID fornecido.
  209.  
  210. have_link ⇒ Verifica se a página ou o nó atual tem um link com o texto ou o ID fornecido.
  211.  
  212. have_none_of_selectors ⇒ Afirma que nenhum dos seletores fornecidos está presente na página ou nos descendentes do nó atual.
  213.  
  214. have_select ⇒ Verifica se a página ou o nó atual tem um campo de seleção com o rótulo, o nome ou o ID fornecido.
  215.  
  216. have_selector ⇒ Afirma que um determinado seletor está na página ou um descendente do nó atual.
  217.  
  218. have_table ⇒ Verifica se a página ou o nó atual tem uma tabela com o ID ou legenda fornecida
  219.  
  220. have_text ⇒ Afirma que a página ou o nó atual possui o conteúdo de texto especificado, ignorando quaisquer tags HTML.
  221.  
  222. have_title ⇒ Verifica se um determinado título esta na página.
  223.  
  224. have_unchecked_field ⇒ Verifica se a página ou o nó atual tem um botão de opção ou caixa de seleção com o rótulo, valor ou ID fornecido, que está atualmente desmarcado.
  225.  
  226. have_xpath ⇒ Verifica se uma determinada expressão XPath está na página ou um descendente do nó atual.
  227.  
  228. match_css ⇒ Verifica se uma quantia determinada CSS está na página ou descendente do seu atual.
  229.  
  230. match_selector ⇒ Afirma que o current_node corresponde a um determinado seletor
  231.  
  232. match_xpath ⇒ Correspondente RSpec para saber se o elemento atual corresponde a um determinado seletor de xpath.
  233.  
  234.  
  235. Este post sobre wait_for_ajax é uma tradução do post original da Thoughtbot.
  236.  
  237. Wait_for_ajax
  238. Capybara é muito bom em esperar por AJAX. Por exemplo, esse código continuará verificando a página do elemento para Capybara.default_max_wait_time segundos, permitindo que as chamadas AJAX terminem:
  239.  
  240.  
  241. Mas há momentos em que isso não é suficiente. Por exemplo, neste código:
  242.  
  243.  
  244. Temos uma condição de corrida entre click_link e reload_page. Às vezes, a chamada AJAX passa antes que a Capybara recarregue a página, e às vezes não. Esse tipo de teste não determinístico pode ser muito difícil de debugar, então eu adicionei um pequeno helper.
  245.  
  246. Helper:
  247.  
  248.  
  249. Nós automaticamente incluímos todos os arquivos em /support em nosso helper.rb, então este arquivo é automaticamente requerido. Como apenas as especificações de recursos podem interagir com a página por meio de JavaScript ,O auxiliar usa a variável jQuery.active, que rastreia o número de solicitações AJAX ativas. Quando é 0, não há solicitações AJAX ativas, o que significa que todas as solicitações foram concluídas.
  250.  
  251. Veja como eu uso:
  252.  
  253.  
  254. Agora não há nenhuma condição de corrida: a Capybara irá esperar que a solicitação de amizade do AJAX seja concluída antes de recarregar a página.
  255.  
  256. Se for usar dentro de um page objects basta incluir o módulo
  257.  
  258.  
  259. Não há documentação oficial no jQuery.active, pois é uma variável interna, mas essa resposta do Stack Overflow é útil. Para ver como precisamos de todos os arquivos na especificação / suporte, leia nosso modelo spec_helper.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement