How visanu1996/playwright-pack works
Playwright Pack is a collection of browser and mobile automation examples, principally exercising SauceDemo through Python and TypeScript page objects. In the Python flow, a session loads configuration and test data, creates browser and app-factory objects, and centralized SauceDemo flows drive login, product selection, cart review, and checkout. TypeScript also includes SauceDemo pages plus API, upload, and Material X examples. The graph follows documented or indexed relationships; dashed links with no evidence path indicate likely test-to-page usage not shown in the excerpts.
Main entry points: sauce_common.py Purchase flow · base_page.py Base page · driver_factory.py Browser manager · session_manage.py Session setup
Components 25
Python Runtime
- Session setup
SAUCEDEMO-Playwright/Python/utils/session_manage.py - Config loader
SAUCEDEMO-Playwright/Python/utils/file_loader.py - Browser manager
SAUCEDEMO-Playwright/Python/utils/driver_factory.py - App factory
SAUCEDEMO-Playwright/Python/utils/app_factory.py - Base page
SAUCEDEMO-Playwright/Python/resources/base_page.py - Python settings
SAUCEDEMO-Playwright/Python/config
Python SauceDemo
- Purchase flow
SAUCEDEMO-Playwright/Python/resources/PageObjects/SAUCEDEMO/sauce_common.py - Login
SAUCEDEMO-Playwright/Python/resources/PageObjects/SAUCEDEMO/login_page.py - Product catalog
SAUCEDEMO-Playwright/Python/resources/PageObjects/SAUCEDEMO/product_page.py - Cart
SAUCEDEMO-Playwright/Python/resources/PageObjects/SAUCEDEMO/cart_page.py - Checkout
SAUCEDEMO-Playwright/Python/resources/PageObjects/SAUCEDEMO/checkout_page.py
TypeScript Core
- Driver factory
SAUCEDEMO-Playwright/TypeScript/src/core/DriverFactory.ts - Base page
SAUCEDEMO-Playwright/TypeScript/src/core/BasePage.ts - TypeScript settings
SAUCEDEMO-Playwright/TypeScript/config/config.ts - Test data
SAUCEDEMO-Playwright/TypeScript/config/testdata.ts
TypeScript SauceDemo
- Login
SAUCEDEMO-Playwright/TypeScript/src/pages/sauce-demo/LoginPage.ts - Product catalog
SAUCEDEMO-Playwright/TypeScript/src/pages/sauce-demo/ProductPage.ts - Cart
SAUCEDEMO-Playwright/TypeScript/src/pages/sauce-demo/CartPage.ts - Checkout
SAUCEDEMO-Playwright/TypeScript/src/pages/sauce-demo/CheckoutPage.ts
TypeScript Examples
- Booker API
SAUCEDEMO-Playwright/TypeScript/src/pages/api/RestfulBooker.ts - Upload page
SAUCEDEMO-Playwright/TypeScript/src/pages/expandtesting/UploadPage.ts - Material X page
SAUCEDEMO-Playwright/TypeScript/src/pages/material-x/MainPage.ts - Material X common
SAUCEDEMO-Playwright/TypeScript/src/pages/material-x/CommonMat.ts
Other components
- Test author
- SauceDemo site
Connections 24
- Session setup → Config loader: loads settings
SAUCEDEMO-Playwright/Python/utils/session_manage.py - Session setup → Browser manager: creates manager
SAUCEDEMO-Playwright/Python/utils/session_manage.py - Session setup → App factory: creates factory
SAUCEDEMO-Playwright/Python/utils/session_manage.py - Base page → Browser manager: uses browser
SAUCEDEMO-Playwright/Python/resources/base_page.py - App factory → Browser manager: opens pages
SAUCEDEMO-Playwright/Python/utils/app_factory.py - Purchase flow → Login: calls login
SAUCEDEMO-Playwright/Python/resources/PageObjects/SAUCEDEMO/sauce_common.py - Purchase flow → Product catalog: adds products
SAUCEDEMO-Playwright/Python/resources/PageObjects/SAUCEDEMO/sauce_common.py - Purchase flow → Cart: checks cart
SAUCEDEMO-Playwright/Python/resources/PageObjects/SAUCEDEMO/sauce_common.py - Purchase flow → Checkout: fills checkout
SAUCEDEMO-Playwright/Python/resources/PageObjects/SAUCEDEMO/sauce_common.py - Login → Base page: inherits
SAUCEDEMO-Playwright/Python/resources/PageObjects/SAUCEDEMO/sauce_common.py - Product catalog → Base page: inherits
SAUCEDEMO-Playwright/Python/resources/PageObjects/SAUCEDEMO/sauce_common.py - Cart → Base page: inherits
SAUCEDEMO-Playwright/Python/resources/PageObjects/SAUCEDEMO/sauce_common.py - Checkout → Base page: inherits
SAUCEDEMO-Playwright/Python/resources/PageObjects/SAUCEDEMO/sauce_common.py - Test author → Purchase flow: exercises
- Browser manager → SauceDemo site: drives browser
- Driver factory → TypeScript settings: reads settings
SAUCEDEMO-Playwright/TypeScript/src/core/DriverFactory.ts - Base page → TypeScript settings: uses settings
SAUCEDEMO-Playwright/TypeScript/src/core/BasePage.ts - Base page → Test data: uses test data
SAUCEDEMO-Playwright/TypeScript/src/core/BasePage.ts - Booker API → Test data: uses payloads
SAUCEDEMO-Playwright/TypeScript/src/pages/api/RestfulBooker.ts - Material X page → Material X common: extends
SAUCEDEMO-Playwright/TypeScript/src/pages/material-x/MainPage.ts - Test author → Login: exercises
- Test author → Booker API: exercises
- Test author → Upload page: exercises
- Test author → Material X page: exercises