Skip to content

Commit

Permalink
SFR-1797: Remove clicks on header and footer links in Playwright tests (
Browse files Browse the repository at this point in the history
#449)

* Removed clicks on header links

* Updated changelog

* Added my account link assertion

* Corrected wording of pub year assertion

* Temporarily removed advanced search page specificity on footer tests

* Removed footer clicks

* Added DRB pages and locators to check footer links

* Updated page locators

* Removed unneeded heading locators

* item details and work details links were the same so only one will be used

* Added DRB pages to cycle through and check header links

* Grouped footer locators

* Added advanced search page to headers and footers

* Split element checks and searching into separate scenarios in advSearch

* Beginning to organize locators

* Reorganized locators

* Removed comment

* Fix lint errors

* Fixed more lint errors
  • Loading branch information
clarissarichard authored Oct 24, 2023
1 parent 675a54a commit a21f2e2
Show file tree
Hide file tree
Showing 11 changed files with 193 additions and 198 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
- Upgrade to NYPL Design System 1.7.3
- Replace fireEvent with userEvent
- Feedback button test PW
- SFR-1797: Remove Playwright tests with clicks on header and footer links

## [0.17.4]

Expand Down
5 changes: 2 additions & 3 deletions playwright/features/ReadOnlineTargets.feature
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
Feature: Read Online Link Targets

Scenario: As a user I click the Read Online button on the search results page and in the item detail page and their link targets navigate to the same website
Given I go to the "search result" page
Given I go to the "search results" page
When I click the "first read online button"
Then the "Hathi Trust website" should be displayed
Given I go to the "work details" page
Given I go to the "item details" page
When I click the "first read online button"
Then the "Hathi Trust website" should be displayed

24 changes: 6 additions & 18 deletions playwright/features/advSearch.feature
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Feature: Advanced Search

Scenario: As a user I search for a keyword and author and the search results contain both the keyword and author
Scenario: As a user I navigate to the advanced search page and all page elements are displayed
Given I go to the "home" page
When I click the "advanced search link"
Then the "advanced search heading" should be displayed
Expand All @@ -18,7 +18,11 @@ Feature: Advanced Search
And the "date filter to field" should be displayed
And the "advanced search button" should be displayed
And the "advanced search clear button" should be displayed
When I fill in the "keyword search box" with "IBM 1401"

Scenario: As a user I search for a keyword and author and the search results contain both the keyword and author
Given I go to the "home" page
When I click the "advanced search link"
And I fill in the "keyword search box" with "IBM 1401"
And I fill in the "author search box" with "Laurie, Edward J."
And I click the "advanced search button"
Then the "keyword heading" should be displayed
Expand All @@ -34,19 +38,3 @@ Feature: Advanced Search
Then the "Russian language subheader" should be displayed
And the "Russian language checkbox" should be checked
And the "first read online button" should be displayed

Scenario: As as user I verify the headers and footers of Advanced Search Page
Given I go to the "home" page
When I click the "advanced search link"
And the "advanced search breadcrumb" should be displayed
And the "accessibility footer link" should be displayed
And the "press footer link" should be displayed
And the "careers footer link" should be displayed
And the "space rental footer link" should be displayed
And the "privacy footer link" should be displayed
And the "other policies footer link" should be displayed
And the "terms and conditions footer link" should be displayed
And the "governance footer link" should be displayed
And the "rules and regulations footer link" should be displayed
And the "about footer link" should be displayed
And the "language footer link" should be displayed
42 changes: 16 additions & 26 deletions playwright/features/drbFooters.feature
Original file line number Diff line number Diff line change
@@ -1,37 +1,27 @@
Feature: As a user I want to verify all the footer links are displayed and working as expected
Feature: Footer Links

Scenario: As as user I verify the headers and footers of Advanced Search Page
Given I go to the "home" page
When I click the "advanced search link"
And the "advanced search breadcrumb" should be displayed
And the "accessibility footer link" should be displayed
Scenario: As a user I navigate to each Digital Research Books page and verify the footer links are displayed
Given I go to the <DRB> page
Then the "accessibility footer link" should be displayed
And the "press footer link" should be displayed
And the "careers footer link" should be displayed
And the "space rental footer link" should be displayed
And the "privacy footer link" should be displayed
And the "privacy policy footer link" should be displayed
And the "other policies footer link" should be displayed
And the "terms and conditions footer link" should be displayed
And the "governance footer link" should be displayed
And the "rules and regulations footer link" should be displayed
And the "about footer link" should be displayed
And the "about NYPL footer link" should be displayed
And the "language footer link" should be displayed


Scenario Outline: As a user when I click on footer links I should be navigated to respective landing page
Given I go to the "home" page
Then I click the <footer link>
And the <page heading> should be displayed

Examples:
| footer link | page heading |
| "accessibility footer link" | "accessibility page heading" |
| "press footer link" | "press page heading" |
| "careers footer link" | "careers page heading" |
| "space rental footer link" | "space rental page heading" |
| "privacy footer link" | "privacy page heading" |
| "other policies footer link" | "other policies page heading" |
| "terms and conditions footer link" | "terms and conditions page heading" |
| "governance footer link" | "governance page heading" |
| "rules and regulations footer link" | "rules and regulations page heading" |
| "about footer link" | "about page heading" |
| "language footer link" | "language page heading" |
| DRB |
| "home" |
| "advanced search" |
| "search results" |
| "item details" |
| "edition details" |
| "collection" |
| "read online" |
| "license" |
| "about" |
70 changes: 41 additions & 29 deletions playwright/features/headerLinks.feature
Original file line number Diff line number Diff line change
@@ -1,37 +1,49 @@
Feature: Header Links

Scenario: As a user I navigate to the Digital Research Books home page and header links navigate to the correct pages (one click)
Given I go to the "home" page
When I click the <header link>
Then the <page heading> should be displayed
Scenario: As a user I navigate to each Digital Research Books page and verify the header links are displayed
Given I go to the <DRB> page
Then the "header logo" should be displayed
And the "my account header link" should be displayed
And the "locations header link" should be displayed
And the "library card header link" should be displayed
And the "email updates header link" should be displayed
And the "donate header link" should be displayed
And the "shop header link" should be displayed
And the "books music movies header link" should be displayed
And the "research header link" should be displayed
And the "education header link" should be displayed
And the "events header link" should be displayed
And the "connect header link" should be displayed
And the "give header link" should be displayed
And the "get help header link" should be displayed
And the "search header link" should be displayed

Examples:
| header link | page heading |
| "header logo" | "spotlight heading" |
| "locations header link" | "find your library page heading" |
| "library card header link" | "library card page heading" |
| "email updates header link" | "email updates page heading" |
| "donate header link" | "donate page heading" |
| "shop header link" | "shop page heading" |
| "books music movies header link" | "books music movies page heading" |
| "research header link" | "research page heading" |
| "education header link" | "education page heading" |
| "events header link" | "events page heading" |
| "connect header link" | "connect page heading" |
| "give header link" | "give page heading" |
| "get help header link" | "get help page heading" |
| "search header link" | "search header label" |

Examples:
| DRB |
| "home" |
| "advanced search" |
| "search results" |
| "item details" |
| "edition details" |
| "collection" |
| "read online" |
| "license" |
| "about" |

Scenario: As a user I navigate to the Digital Research Books home page and header links navigate to the correct pages (two clicks)
Scenario: As a user I navigate to the Digital Research Books home page and verify the account and search header sub-links and elements are displayed
Given I go to the "home" page
When I click the <first header link>
And I click the <second header link>
Then the <page heading> should be displayed
Then the <second header link> should be displayed

Examples:
| first header link | second header link | page heading |
| "my account header link" | "catalog header link" | "my account login form" |
| "my account header link" | "research catalog header link" | "my account login form" |
| "my account header link" | "close my account header link" | "my account header link" |
| "search header link" | "close search header link" | "search header link" |
| first header link | second header link |
| "my account header link" | "catalog header link" |
| "my account header link" | "research catalog header link" |
| "my account header link" | "close my account header link" |
| "search header link" | "search header label" |
| "search header link" | "search header text field" |
| "search header link" | "search books music movies radio button" |
| "search header link" | "search research catalog radio button" |
| "search header link" | "search library website radio button" |
| "search header link" | "search header button" |
| "search header link" | "close search header link" |
5 changes: 2 additions & 3 deletions playwright/features/homePageElements.feature
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,7 @@ Feature: Home Page Elements
And the "collections heading" should be displayed
And the "first collection card link" should be displayed
And the "footer" should be displayed
And the "feedback button" should be displayed

Scenario: As a user I verify feedback button is displayed on homepage
Scenario: As a user I verify the help and feedback button is displayed on the Digital Research Books home page
Given I go to the "home" page
Then the "feedback and help button" should be displayed
Then the "help and feedback button" should be displayed
8 changes: 4 additions & 4 deletions playwright/features/itemDetailPageElements.feature
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Feature: Item Detail Page Elements
Feature: Item Details Page Elements

Scenario: As a user I navigate to an item detail page and all item detail page elements are displayed
Given I go to the "item detail" page
Scenario: As a user I navigate to an item details page and all item details page elements are displayed
Given I go to the "item details" page
And the "search category dropdown" should be displayed
And the "homepage search box" should be displayed
And the "search button" should be displayed
Expand All @@ -27,7 +27,7 @@ Feature: Item Detail Page Elements
And the "second item edition" should be displayed

Scenario: As a user when I click on "show only items currently available online" button, only online available books should be displayed
Given I go to the "item detail" page
Given I go to the "item details" page
Then I double click the "items currently available online toggle"
And the "first read online button for all editions" should be displayed

Expand Down
2 changes: 1 addition & 1 deletion playwright/features/pub_yearFilter.feature
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,4 @@ Feature: Publication Year Filter
And I fill in the "publication year from filter" with "1800"
And I fill in the "publication year to filter" with "1835"
And I click the "publication year apply button"
Then only published between year "1800" and "1835" should be displayed
Then only editions published between year "1800" and "1835" should be displayed
4 changes: 1 addition & 3 deletions playwright/support/constants.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,2 @@
export const URL = "playwright";
// create const for the URL
export const itemDetailURL =
"work/01a28167-8c8d-4141-a32f-718539d5c8a4?featured=949699";
export const URL = "playwright";
Loading

1 comment on commit a21f2e2

@vercel
Copy link

@vercel vercel bot commented on a21f2e2 Oct 24, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.