dunossauro / todo_list_flask_brython

um todo-list/kanban implementado com python fullstack
http://todo-brython.herokuapp.com
GNU General Public License v3.0
42 stars 13 forks source link

Rodar testes usando selenium no github actions #53

Open dunossauro opened 3 years ago

dunossauro commented 3 years ago

É possível com o uso do actions usar serviços externos durante o pipeline do CI. Porém, isso precisa ser implementado de maneira eficiente.

Atualmente os testes e2e só rodam no firefox, a issue #23 tenta solucionar esse problema de multibrowsers, porém ainda não existe uma maneira eficiente de rodar a aplicação e os testes ao mesmo tempo.

Existe alguma maneira de rodar a aplicação em um container como um serviço também? Ou seria melhor criar um live server como o pytest faz?

OBS: Os testes e2e foram escritos usando behave, não pytest.

Referências:

  1. Rodando selenium grid no actions: https://ianwalter.dev/running-selenium-webdriver-tests-using-github-actions/
  2. Exemplo de implementação do grid: https://github.com/ianwalter/bff-webdriver/blob/master/.github/workflows/ci.yml#L16
  3. Webdriver factory (multibrowser): https://www.vinsguru.com/selenium-webdriver-design-patterns-in-test-automation-factory-pattern/