This is web automation framework, implemented using Python & Webdriver. Page Object Model (POM) is used to make the code more readable, maintainable, and reusable.
- Python
- pip
- Selenium/WebDriver
- nosetests & nose-html-reporting
- Browsers (Firefox, Chrome, IE)
- Respective Browser drivers
- Pycharm
Test scripts can be executed by nosetests:
nosetests -s -v --nologcapture <test-script.py>
e.g:
nosetests -s -v --nologcapture checkbox_page_test.py
Execute different group of test:
nosetests -s -v --nologcapture -a group= <test-script.py>
e.g:
nosetests -s -v --nologcapture -a group=smoke all_tests.py
Get Test-reports:
nosetests -s -v --nologcapture --with-html --html-report= <test-script.py>
e.g:
nosetests -s -v --nologcapture --with-html --html-report=test_report.html checkbox_page_test.py
Note: Kindly set the respective browser's driver path either to System variable or update it in drivermanager.py
e.g: self.driver = webdriver.Firefox(executable_path="geckodriver path") # in case of Firefox browser.
Contents | Status | |
---|---|---|
Framework level | Page Object Model | Done |
Profiles | Done | |
Grids | ||
Cross browsers & cross platform | ||
Locators | Learning how to get locators. | |
Functionality To Automate | Challenging DOM | Done |
Checkboxes | Done | |
Context Menu | Done | |
Disappearing Elements | Done | |
Drag and Drop | Done | |
Dropdown | Done | |
Dynamic Content | ||
Dynamic Controls | Done | |
Dynamic Loading | Done | |
File Download | Done | |
File Upload | Done | |
Floating Menu | ||
Frames | Done | |
Horizontal Slider | ||
Hovers | Done | |
Infinite Scroll | ||
JQuery UI Menus | ||
JavaScript Alerts | ||
Key Presses | ||
Large & Deep DOM | ||
Multiple Windows | Done | |
Nested Frames | Done | |
Notification Messages | ||
Redirect Link | ||
Shifting Content |