File tree Expand file tree Collapse file tree 2 files changed +26
-1
lines changed
Expand file tree Collapse file tree 2 files changed +26
-1
lines changed Original file line number Diff line number Diff line change @@ -7,6 +7,9 @@ export class ItensPage {
77 readonly bikeLightAddToCartBtn : Locator ;
88 readonly boltTshirtAddToCartBtn : Locator ;
99 readonly cartLink : Locator ;
10+ readonly removeBackpackButton : Locator ;
11+ readonly cartItem : Locator ;
12+ readonly backpackInCart : Locator ;
1013
1114 constructor ( page : Page ) {
1215 this . page = page ;
@@ -16,11 +19,18 @@ export class ItensPage {
1619 this . bikeLightAddToCartBtn = page . locator ( '[data-test="add-to-cart-sauce-labs-bike-light"]' ) ;
1720 this . boltTshirtAddToCartBtn = page . locator ( '[data-test="add-to-cart-sauce-labs-bolt-t-shirt"]' ) ;
1821 this . cartLink = page . locator ( '[data-test="shopping-cart-link"]' ) ;
22+ this . removeBackpackButton = page . locator ( '[data-test="remove-sauce-labs-backpack"]' ) ;
23+ this . cartItem = page . locator ( '.cart_item' ) ;
24+ this . backpackInCart = page . locator ( '.cart_item' ) . filter ( { hasText : 'Sauce Labs Backpack' } ) ;
1925 }
2026
2127 async adicionarBackpackAoCarrinho ( ) {
2228 await this . backpackAddToCartBtn . click ( ) ;
2329 await this . bikeLightAddToCartBtn . click ( ) ;
2430 await this . boltTshirtAddToCartBtn . click ( ) ;
2531 }
32+
33+ async removeBackPack ( ) {
34+ await this . removeBackpackButton . click ( ) ;
35+ }
2636}
Original file line number Diff line number Diff line change @@ -2,7 +2,7 @@ import { test, expect } from '@playwright/test';
22import { LoginPage } from '../../pages/LoginPage' ;
33import { ItensPage } from '../../pages/ItensPage' ;
44
5- test . describe ( 'Cenários de adicionar itens no Carrinho' , ( ) => {
5+ test . describe ( 'Cenários de adicionar e remover itens no Carrinho' , ( ) => {
66 test . beforeEach ( async ( { page } ) => {
77 const loginPage = new LoginPage ( page ) ;
88 await loginPage . acessarPagina ( ) ;
@@ -17,4 +17,19 @@ test.describe('Cenários de adicionar itens no Carrinho', () => {
1717 await expect ( item . cartBadge ) . toHaveText ( '3' ) ;
1818 await expect ( page . locator ( '[data-test="remove-sauce-labs-backpack"]' ) ) . toBeVisible ( ) ;
1919 } ) ;
20+
21+ test ( 'Remover item do carrinho e validar a exclusão' , async ( { page } ) => {
22+ const item = new ItensPage ( page ) ;
23+
24+ await item . adicionarBackpackAoCarrinho ( ) ;
25+ await item . cartLink . click ( ) ;
26+
27+ await expect ( item . backpackInCart ) . toBeVisible ( ) ;
28+
29+ await item . removeBackPack ( ) ;
30+
31+ await expect ( item . backpackInCart ) . not . toBeAttached ( ) ;
32+
33+ await expect ( item . cartBadge ) . toHaveText ( '2' ) ;
34+ } ) ;
2035} ) ;
You can’t perform that action at this time.
0 commit comments