Skip to content

Commit

Permalink
Refatoração nos testes de Login e Carrinho
Browse files Browse the repository at this point in the history
  • Loading branch information
thinogueiras committed Mar 12, 2024
1 parent 9a7eb3d commit 19d71bf
Show file tree
Hide file tree
Showing 4 changed files with 126 additions and 95 deletions.
43 changes: 27 additions & 16 deletions resources/pages/CartPage.resource
Original file line number Diff line number Diff line change
Expand Up @@ -45,48 +45,59 @@ Check Product Details In Cart
Run Keyword And Continue On Failure Should Be Equal ${product_price} ${price}
Run Keyword And Continue On Failure Should Be Equal ${product_quantity} ${quantity}

Dado que estou logado no Sauce Demo
Dado que o usuário está logado no sistema
Login Successfully

E tenho o produto "${produto}" no carrinho
E que o produto "${produto}" está no carrinho
${product} Convert To Lower Case ${produto}
${product} Replace String ${product} ${SPACE} -

Click css=#add-to-cart-${product}
Check Quantity On Cart Badge 1
Go To Cart

E que estou na página do produto "${produto}"
Enter Product Page ${produto}
E que o produto está no carrinho
${product} Convert To Lower Case Sauce Labs Bolt T-Shirt
${product} Replace String ${product} ${SPACE} -

Quando adiciono o produto "${produto}" ao carrinho
E tenho o produto "${produto}" no carrinho
Click css=#add-to-cart-${product}
Check Quantity On Cart Badge 1
Go To Cart

Quando removo o produto "${produto}" a partir da página do produto
E que está na página do produto "${produto}"
Enter Product Page ${produto}

Quando adicionar o produto "${produto}" ao carrinho
E que o produto "${produto}" está no carrinho

Quando adicionar o produto ao carrinho
E que o produto está no carrinho

Quando remover o produto a partir da página do produto
Enter Product Page Sauce Labs Backpack
Remove Product
Go To Cart

Quando removo o produto do carrinho
Quando remover o produto do carrinho
Remove Product

Quando continuo para a Shopping
Quando continuar para o Shopping
Click css=#continue-shopping

Quando volto para os produtos
Quando voltar para a página de produtos
Click css=#back-to-products

Então vejo o produto "${produto}" dentro do carrinho
Wait For Condition Text css=.inventory_item_name equals ${produto}
Então o produto é adicionado com sucesso ao carrinho
Wait For Condition Text css=.inventory_item_name equals Sauce Labs Bolt T-Shirt

Então vejo o carrinho vazio
Então o carrinho fica vazio
Wait For Elements State css=.cart_item detached

Então vejo os detalhes do produto "${produto}" no carrinho
Então os detalhes do produto serão exibidos no carrinho
${item_desc} Set Variable It's not every day that you come across a midweight quarter-zip fleece jacket capable of handling everything from a relaxing day outdoors to a busy day at the office.

Check Product Details In Cart ${produto} descricao=${item_desc} price=$49.99 quantity=1
Check Product Details In Cart Sauce Labs Fleece Jacket descricao=${item_desc} price=$49.99 quantity=1

Então vejo a página de produtos
Então a página de produtos é exibida com sucesso
Check Page Secondary Header Products
Wait For Elements State css=.inventory_list visible
39 changes: 35 additions & 4 deletions resources/pages/LoginPage.resource
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,19 @@ Resource ../helpers.resource

*** Variables ***
${BASE_URL} https://www.saucedemo.com
${USER_CORRETO} standard_user
${USER_INCORRETO} thiago_user
${SENHA_CORRETA} secret_sauce
${SENHA_INCORRETA} sauce_secret
${USER_VAZIO} ${EMPTY}
${SENHA_VAZIA} ${EMPTY}
${USER_BLOQUEADO} locked_out_user

*** Keywords ***
Go To Page
New Page ${BASE_URL}

Dado que estou no site Sauce Demo
Dado que o usuário está na página de login
Go To Page

Fill Login Credentials
Expand All @@ -25,11 +32,35 @@ Fill Login Credentials
Click On Login Button
Click css=#login-button

Quando faço login com o ${usuario} e ${senha}
Fill Login Credentials ${usuario} ${senha}
Quando realizar login com credenciais válidas
Fill Login Credentials ${USER_CORRETO} ${SENHA_CORRETA}
Click On Login button

Então sou redirecionado para a página principal
Quando realizar login com um usuário incorreto
Fill Login Credentials ${USER_INCORRETO} ${SENHA_CORRETA}
Click On Login button

Quando realizar login com uma senha incorreta
Fill Login Credentials ${USER_CORRETO} ${SENHA_INCORRETA}
Click On Login button

Quando realizar login sem informar um usuário
Fill Login Credentials ${USER_VAZIO} ${SENHA_CORRETA}
Click On Login button

Quando realizar login sem informar uma senha
Fill Login Credentials ${USER_CORRETO} ${SENHA_VAZIA}
Click On Login button

Quando realizar login sem informar as credenciais
Fill Login Credentials ${USER_VAZIO} ${SENHA_VAZIA}
Click On Login button

Quando realizar login com um usuário bloqueado
Fill Login Credentials ${USER_BLOQUEADO} ${SENHA_CORRETA}
Click On Login button

Então é redirecionado para a página principal
Get Url contains inventory.html
Check Page Secondary Header Products
Wait For Condition Text css=a[id="logout_sidebar_link"] equals Logout
Expand Down
80 changes: 40 additions & 40 deletions tests/carrinho.robot
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
*** Settings ***
Documentation Suíte de testes de carrinho
Documentation Funcionalidade: Carrinho de compras
Resource ../resources/base.resource

Expand All @@ -9,42 +9,42 @@ Test Teardown Finish Test
Default Tags carrinho

*** Test Cases ***
Deve incluir produto no carrinho a partir da página de produtos
Dado que estou logado no Sauce Demo
Quando adiciono o produto "Sauce Labs Bolt T-Shirt" ao carrinho
Então vejo o produto "Sauce Labs Bolt T-Shirt" dentro do carrinho

Deve incluir produto no carrinho a partir da página do produto
Dado que estou logado no Sauce Demo
E que estou na página do produto "Sauce Labs Fleece Jacket"
Quando adiciono o produto "Sauce Labs Fleece Jacket" ao carrinho
Então vejo o produto "Sauce Labs Fleece Jacket" dentro do carrinho

Deve remover produto do carrinho a partir da página de produtos
Dado que estou logado no Sauce Demo
E tenho o produto "Sauce Labs Bike Light" no carrinho
Quando removo o produto do carrinho
Então vejo o carrinho vazio

Deve remover produto do carrinho a partir da página do produto
Dado que estou logado no Sauce Demo
E tenho o produto "Sauce Labs Backpack" no carrinho
Quando removo o produto "Sauce Labs Backpack" a partir da página do produto
Então vejo o carrinho vazio

Deve visualizar os detalhes do produto no carrinho
Dado que estou logado no Sauce Demo
Quando adiciono o produto "Sauce Labs Fleece Jacket" ao carrinho
Então vejo os detalhes do produto "Sauce Labs Fleece Jacket" no carrinho

Deve retornar para a página de produtos a partir do carrinho
Dado que estou logado no Sauce Demo
E tenho o produto "Sauce Labs Onesie" no carrinho
Quando continuo para a Shopping
Então vejo a página de produtos

Deve retornar para a página de produtos a partir da página de um produto
Dado que estou logado no Sauce Demo
E que estou na página do produto "Sauce Labs Onesie"
Quando volto para os produtos
Então vejo a página de produtos
Cenário: Incluir produto no carrinho
Dado que o usuário está logado no sistema
Quando adicionar o produto "Sauce Labs Bolt T-Shirt" ao carrinho
Então o produto é adicionado com sucesso ao carrinho

Cenário: Incluir produto no carrinho a partir da página do produto
Dado que o usuário está logado no sistema
E que está na página do produto "Sauce Labs Bolt T-Shirt"
Quando adicionar o produto ao carrinho
Então o produto é adicionado com sucesso ao carrinho

Cenário: Remover produto do carrinho
Dado que o usuário está logado no sistema
E que o produto "Sauce Labs Bike Light" está no carrinho
Quando remover o produto do carrinho
Então o carrinho fica vazio

Cenário: Remover produto do carrinho a partir da página do produto
Dado que o usuário está logado no sistema
E que o produto "Sauce Labs Backpack" está no carrinho
Quando remover o produto a partir da página do produto
Então o carrinho fica vazio

Cenário: Visualizar os detalhes do produto no carrinho
Dado que o usuário está logado no sistema
Quando adicionar o produto "Sauce Labs Fleece Jacket" ao carrinho
Então os detalhes do produto serão exibidos no carrinho

Cenário: Retornar para a página de produtos a partir do carrinho
Dado que o usuário está logado no sistema
E que o produto "Sauce Labs Bike Light" está no carrinho
Quando continuar para o Shopping
Então a página de produtos é exibida com sucesso

Cenário: Retornar para a página de produtos a partir da página de um produto
Dado que o usuário está logado no sistema
E que está na página do produto "Sauce Labs Onesie"
Quando voltar para a página de produtos
Então a página de produtos é exibida com sucesso
59 changes: 24 additions & 35 deletions tests/login.robot
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
*** Settings ***
Documentation Suíte de testes de login
Documentation Funcionalidade: Login
Resource ../resources/base.resource

Expand All @@ -8,49 +8,38 @@ Test Teardown Finish Test

Default Tags login

*** Variables ***
${USER_CORRETO} standard_user
${USER_INCORRETO} thiago_user
${SENHA_CORRETA} secret_sauce
${SENHA_INCORRETA} sauce_secret
${USER_VAZIO} ${EMPTY}
${SENHA_VAZIA} ${EMPTY}
${USER_BLOQUEADO} locked_out_user

*** Test Cases ***
Deve logar com sucesso
Dado que estou no site Sauce Demo
Quando faço login com o ${USER_CORRETO} e ${SENHA_CORRETA}
Então sou redirecionado para a página principal

Deve validar usuário incorreto
Dado que estou no site Sauce Demo
Quando faço login com o ${USER_INCORRETO} e ${SENHA_CORRETA}
Cenário: Login com sucesso
Dado que o usuário está na página de login
Quando realizar login com credenciais válidas
Então é redirecionado para a página principal

Cenário: Validar usuário incorreto
Dado que o usuário está na página de login
Quando realizar login com um usuário incorreto
Então o sistema exibe a mensagem: "Username and password do not match any user in this service"

Deve validar senha incorreta
Dado que estou no site Sauce Demo
Quando faço login com o ${USER_CORRETO} e ${SENHA_INCORRETA}
Cenário: Validar senha incorreta
Dado que o usuário está na página de login
Quando realizar login com uma senha incorreta
Então o sistema exibe a mensagem: "Username and password do not match any user in this service"

Deve validar usuário obrigatório
Dado que estou no site Sauce Demo
Quando faço login com o ${USER_VAZIO} e ${SENHA_CORRETA}
Cenário: Validar usuário obrigatório
Dado que o usuário está na página de login
Quando realizar login sem informar um usuário
Então o sistema exibe a mensagem: "Username is required"

Deve validar senha obrigatória
Dado que estou no site Sauce Demo
Quando faço login com o ${USER_CORRETO} e ${SENHA_VAZIA}
Cenário: Validar senha obrigatória
Dado que o usuário está na página de login
Quando realizar login sem informar uma senha
Então o sistema exibe a mensagem: "Password is required"

Deve validar usuário e senha não informados
[Documentation] Testa a tentativa de login clicando diretamente no botão "Login".
Dado que estou no site Sauce Demo
Quando faço login com o ${USER_VAZIO} e ${SENHA_VAZIA}
Cenário: Validar usuário e senha obrigatórios
Dado que o usuário está na página de login
Quando realizar login sem informar as credenciais
Então o sistema exibe a mensagem: "Username is required"

Deve validar usuário bloqueado no sistema
Dado que estou no site Sauce Demo
Quando faço login com o ${USER_BLOQUEADO} e ${SENHA_CORRETA}
Cenário: Validar usuário bloqueado no sistema
Dado que o usuário está na página de login
Quando realizar login com um usuário bloqueado
Então o sistema exibe a mensagem: "Sorry, this user has been locked out."

1 comment on commit 19d71bf

@github-actions
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Robot Results

✅ Passed ❌ Failed ⏭️ Skipped Total Pass % ⏱️ Duration
14 0 0 14 100 8.126459999s

Passed Tests

Name ⏱️ Duration Suite
Cenário: Incluir produto no carrinho 0.949 s Carrinho
Cenário: Incluir produto no carrinho a partir da página do produto 0.653 s Carrinho
Cenário: Remover produto do carrinho 0.624 s Carrinho
Cenário: Remover produto do carrinho a partir da página do produto 0.780 s Carrinho
Cenário: Visualizar os detalhes do produto no carrinho 0.655 s Carrinho
Cenário: Retornar para a página de produtos a partir do carrinho 0.714 s Carrinho
Cenário: Retornar para a página de produtos a partir da página de um produto 0.644 s Carrinho
Cenário: Login com sucesso 0.500 s Login
Cenário: Validar usuário incorreto 0.455 s Login
Cenário: Validar senha incorreta 0.444 s Login
Cenário: Validar usuário obrigatório 0.426 s Login
Cenário: Validar senha obrigatória 0.414 s Login
Cenário: Validar usuário e senha obrigatórios 0.439 s Login
Cenário: Validar usuário bloqueado no sistema 0.428 s Login

Please sign in to comment.