Skip to content

Page object design pattern implementation in python (python + pom + selenium + pytest)

License

Notifications You must be signed in to change notification settings

r00t-ex0rc1s7/python-page-object

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Page object design pattern implementation in python

Represent most popular OOD pattern for Web UI automation using python programming language.

Run automated tests

From the root directory of your shell run next command

  • Smoke tests
~ ./run-tests smoke
  • Unittest tests
~ ./run-tests unittest
  • All tests
~ ./run-tests all

Tests report sample

cachedir: .pytest_cache
Project: Pytest Page Object Model
Written by: Volodymyr Yahello
collected 14 items                                                                                                                                                                                               

tests/coverage/functional/pages/test_home_page.py::test_home_page_logo PASSED                                                                                                                              [  7%]
tests/coverage/functional/pages/test_home_page.py::test_home_page_contact PASSED                                                                                                                           [ 14%]
tests/coverage/functional/pages/test_home_page.py::test_home_page_sign_on PASSED                                                                                                                           [ 21%]
tests/coverage/functional/pages/test_home_page.py::test_home_page_support PASSED                                                                                                                           [ 28%]
tests/coverage/functional/pages/test_home_page.py::test_home_page_register PASSED                                                                                                                          [ 35%]
tests/coverage/functional/pages/test_register_page.py::test_register_page_register_text PASSED                                                                                                             [ 42%]
tests/coverage/functional/pages/test_register_page.py::test_set_first_name PASSED                                                                                                                          [ 50%]
tests/coverage/functional/pages/test_register_page.py::test_registration PASSED                                                                                                                            [ 57%]
tests/coverage/unittests/browsers/test_browsers.py::test_browser_name[Safari] PASSED                                                                                                                       [ 64%]
tests/coverage/unittests/browsers/test_browsers.py::test_browser_name[Chrome] PASSED                                                                                                                       [ 71%]
tests/coverage/unittests/browsers/test_browsers.py::test_browser_error PASSED                                                                                                                              [ 78%]
tests/coverage/unittests/map/test_urls.py::test_home_url PASSED                                                                                                                                            [ 85%]
tests/coverage/unittests/map/test_urls.py::test_register_url PASSED                                                                                                                                        [ 92%]
tests/coverage/unittests/map/test_urls.py::test_sign_on_url PASSED                                                                                                                                         [100%]

=========================================================================================== 14 passed in 25.30 seconds ===========================================================================================
removing .pytest_cache testing trash
environment is cleared

Contributing

  • clone the repository
  • configure Git for the first time after cloning with your name and email
    git config --local user.name "Volodymyr Yahello"
    git config --local user.email "[email protected]"
  • python3.6 is required to run the code
  • run pip install -r requirements.txt to install all required python packages

About

Page object design pattern implementation in python (python + pom + selenium + pytest)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 97.6%
  • Shell 2.4%