Índice
- Converters
1.1 Implementação
- Executando Testes
2.1 Executando testes pela Tag
1. Converters
Os “converters” são utilizados pelas funções da “step_definition” para que as funções aceitem outros tipos de argumentos além de “strings”.
Os “converters” podem transformar os argumentos em tipos “float”, “int” e “str”, por exemplo:
- Tipo Float.
@when(parsers.parse('the user searches for "{text}"'), converters={"text": float})
def search_phrase(browser, text):
- Tipo Int.
@when(parsers.parse('the user searches for "{text}"'), converters={"text": int})
def search_phrase(browser, text):
1.1 Implementação
“web.feature”:
@basic-search
Scenario: Basic DuckDuckGo Result Title
When the user searches for "123"
Then results title contains "123"
@when(parsers.parse('the user searches for "{text}"'), converters={"text": str})
def search_phrase(browser, text):
DuckDuckGoSearchPage(browser).search(text)
2. Executando Testes
2.1 Executando testes pela Tag
Execute o comando abaixo para testar apenas o cenário onde o “converter” foi implementado.
pipenv run python -m pytest -k "basic-search and not independence-search"
3. Repositório
Caso você queira executar o teste acima, clone o projeto do link abaixo e execute os comandos na raiz do projeto.
https://github.com/LuizGustavoR/intro-selenium-py/tree/tutorial/converters
Fim.
4. Agradecimentos
- Esse guia foi feito com base no curso “Behavior Driven Python with pytest-bdd” por Andrew Knight.
- Curso disponível na “Testing Automation University”.