Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Daiane Azevedo - Automação de testes de interfaces web em Ruby usando Watir

Daiane Azevedo - Automação de testes de interfaces web em Ruby usando Watir

A palestra irá apresentar a biblioteca Watir (distribuída como gem do Ruby), expondo as premissas com as quais a ferramenta trabalha, além de comandos básicos e truques. Serão abordados alguns exemplos práticos do uso da ferramenta, com a apresentação de exemplos de código e execução.

Agile Testers

August 21, 2017
Tweet

More Decks by Agile Testers

Other Decks in Technology

Transcript

  1. Automação de testes de interfaces web em Ruby usando Watir

    Daiane Fraga - CWI Software 19/08/2017
  2. O que é Watir? Web Application Testing in Ruby Biblioteca

    Ruby, distribuída como gem, utilizada para a automação de testes de interfaces web. Construída sobre o Selenium.
  3. watir.com diz: An open source Ruby library for automating tests.

    Watir interacts with a browser the same way people do: clicking links, filling out forms and validating text.
  4. Como o Watir funciona Internamente, utiliza o Selenium para interpretar

    as páginas HTML. Abstrai o HTML permitindo a manipulação dos elementos da página como objetos.
  5. Como o Watir funciona O Watir gera classes e métodos

    para todos os elementos HTML suportados e os atributos associados a eles. O encapsulamento fornecido facilita o acesso a atributos específicos, assim como facilita a localização e navegação por eles.
  6. Dica: screenshot após cenário no Cucumber After do |scenario| browser.screenshot.save

    'screenshot.png' embed 'screenshot.png', 'image/png' end
  7. Localizadores • ID • Name • Link Text • Partial

    Link Text • Class Name • Tag Name • CSS • XPath • Text • Data attributes • Aria attributes • Label • Visible • Adjacent (parent, child, children, previous sibling, following sibling, siblings) • Index Selenium Default Adicionais do Watir
  8. Dica: considere usar Page Objects site = Site.new(Watir::Browser.new) login_page =

    site.login_page.open user_page = login_page.login_as "Mom", "s3cr3t" user_page.should be_logged_in https://github.com/watir/watir/wiki/Page-Objects