3

I'm interested in defining a minimum set of high-level operations which should be validated over a page using the Page Object Model in Selenium Automation Framework.

So far I know about the following:

  1. Navigate - Used to navigate to the page. Implemented as navigateToHomepage()
  2. Fill - Used to fill any forms or sections of form on the page. Implemented as fillLoginPage(), fillEmployeeAddressSection(), etc.
  3. Submit - Submit the form. Implemented as submitCustomerCreationPage().
  4. Cancel - Cancel the form submission.
  5. Back - Navigate back from page.
  6. Click - Click any field on page.
  7. Verify - Verify any field related attributes/values on page.
  8. Upload/download - Perform upload/download of a file on page.
  9. Expand/collapse - Expand/collapse any sections on page.
  10. Close - Close the page.

Are there any other high-level operations that should be added to the above list?

Update: I'm looking for atomic page-level operations and not business/functionality level operations. Create, Edit, View, Delete, Search, etc. are business/functional level operations. For example, creation involves navigation to the page (Navigate), filling the form (Fill) and click on Save (Submit). As you can see creation is not atomic in nature to the page, it is a function of the application and not the page. I hope this explanation improves the clarity of the question. Thanks.

4

It all depends what high level operations you have on your page. The requirement of High level functionalities differ from application to application and page to page. Some of the pages may not be having any or some of the options mentioned by you but some may have additional operations like

  • Edit : Change the record to edit mode
  • Delete : Delete the selected record(s) after confirmation message
  • Validate : For validating the data entered is having any issue or not.
  • Dropdown for single selection, Multiple selection, Search and Select
  • Save : Only save the data entered till now
  • Logout : Logging out of the application
  • Invoke Javascript functions like on Entering Email Address and moving focus some other fields become active.
  • Search : operation on listing pages with Pager (Previous, Next, First and Last)
  • Search : provided at the top of the page
  • Next : For moving to next page of the same record (if application have more than 1 page).

I would say instead of preparing a general list, you should first go what your application have and what you need to validate from your list.

  • What you have suggested are business functions and NOT page related functions. Being able to perform 'edit' on a record involves multiple steps: 'select' record, 'click' edit, 'fill' form, 'submit' form. I'm looking for basic steps related to the page only and not business functions. Edit, delete, validate, search etc. are NOT atomic from a page's perspective. They are atomic from business or functionality perspective. You will not be able to perform edit, delete or search on all pages. – Zeeshan Siddiqui Aug 6 '15 at 7:26
1

Considering your focus on atomic page operations, I would add some basic operations on popups, like ClosePopup, AcceptPopup, CancelPopup. Perhaps depending on the technology you should add some extra functions.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.