QA/Push Notifications: Difference between revisions

Jump to navigation Jump to search
(→‎PUSH API: todos)
Line 49: Line 49:


=== Tests ===
=== Tests ===
Notes:
Manual/Automation: Test will be conducted manually
Browser Window: Test will be conducted in standard browser window and Private browser windows
Platforms:  32bit/64 bit Windows 7, Vista, 8, 8.1, 10; Ubuntu 14.04 (x64) and Mac OS X 10.9.5.


'''Name:''' Doorhanger default state test<br/>
'''Name:''' '''Doorhanger default state tes'''t<br/>
'''Description:''' Verify the doorhanger reports if the site has requested any notification permissions.<br/>
'''Description:''' Verify the doorhanger reports if the site has requested any notification permissions.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 57: Line 61:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Pop-up Dialog'''<br/>
'''Description:''' Verify that trying to display a notification causes a dialog to appear.<br/>
'''Description:''' Verify that trying to display a notification causes a dialog to appear.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 66: Line 70:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Close Dialog by External Means / Non-Close Button'''<br/>
'''Description:''' Verify clicking outside of a notification dismisses it automatically (OS X only).<br/>
'''Description:''' Verify clicking outside of a notification dismisses it automatically (OS X only).<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 74: Line 78:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Learn More Link'''<br/>
'''Description:''' Verify clicking on the "Learn more" link opens the target page.<br/>
'''Description:''' Verify clicking on the "Learn more" link opens the target page.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 81: Line 85:
# Verify the browser redirects to https://www.mozilla.org/en-US/firefox/push/ (in a new tab).
# Verify the browser redirects to https://www.mozilla.org/en-US/firefox/push/ (in a new tab).


'''Name:''' TBD<br/>
'''Name:''' '''Notification: Auto Close (Timeout)'''<br/>
'''Description:''' Verify that a notification is auto-closed after X seconds.<br/>
'''Description:''' Verify that a notification is auto-closed after X seconds.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 90: Line 94:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Blocking Notifications'''<br/>
'''Description:''' Verify that blocking notifications prevents notifications from displaying.<br/>
'''Description:''' Verify that blocking notifications prevents notifications from displaying.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 101: Line 105:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Not Now'''<br/>
'''Description:''' Verify clicking "Not Now" from the notification permissions doorhanger causes the permissions popup to appear again.<br/>
'''Description:''' Verify clicking "Not Now" from the notification permissions doorhanger causes the permissions popup to appear again.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 112: Line 116:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Permission Changes'''<br/>
'''Description:''' Verify changing notification permissions in the address bar causes the notification permissions screen to reappear.<br/>
'''Description:''' Verify changing notification permissions in the address bar causes the notification permissions screen to reappear.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 135: Line 139:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Programmatic Close'''<br/>
'''Description:''' Verify programmatically closing a notification causes it to immediately disappear.<br/>
'''Description:''' Verify programmatically closing a notification causes it to immediately disappear.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 146: Line 150:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Title Characters & Numbers'''<br/>
'''Description:''' Verify title can contain special characters like % or /.<br/>
'''Steps:'''<br/>
# Open https://pdehaan.github.io/push-notification-test/
# Set "Title Text"to a a long string which contains special characters like %.
# Click "pop Notification" button.
# Verify the title text is accurately displayed.
# <code>teardown()</code>
 
'''Name:''' '''Notification: Swipe to Close'''<br/>
'''Description:''' Verify notification can be manually dismissed by swiping it (OS X only).<br/>
'''Description:''' Verify notification can be manually dismissed by swiping it (OS X only).<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 155: Line 168:




'''Name:''' TBD<br/>
'''Name:''' '''Push: Register Service Worker'''<br/>
'''Description:''' Verify notification can be dismissed by clicking the close button.<br/>
'''Description:''' Verify registering a service worker causes it to appear in about:serviceworkers..<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
# <code>setup()</code>
# <code>setup()</code>
# Select "Always Show Notifications" from the notifications doorhanger.
# Verify HTML output is:
# Hover over the doorhanger and click the "Close" button.
    registering service worker
# Verify notification is immediately dismissed.
    registered service worker. scope: https://pdehaan.github.io/push-notification-test/
# Click "Check Service Worker" button.
# Verify HTML output is:
    checking service worker
    Service worker active
#
# <code>teardown()</code>
# <code>teardown()</code>




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Require Interaction = True'''<br/>
'''Description:''' Verify setting `requireInteraction` to true causes the notification to remain open until explicitly closed (OS X only).<br/>
'''Description:''' Verify setting `requireInteraction` to true causes the notification to remain open until explicitly closed (OS X only).<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 176: Line 194:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Require Interaction = False'''<br/>
'''Description:''' Verify setting `requireInteraction` to false (default) causes the notification to auto-close after X seconds.<br/>
'''Description:''' Verify setting `requireInteraction` to false (default) causes the notification to auto-close after X seconds.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 187: Line 205:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Redirection = New Tab'''<br/>
'''Description:''' Verify clicking on a notification opens a specified URL.<br/>
'''Description:''' Verify clicking on a notification opens a specified URL.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 197: Line 215:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Redirection = Current Tab'''<br/>
'''Description:''' Verify setting target opens specified URL in the specified window.<br/>
'''Description:''' Verify setting target opens specified URL in the specified window.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 208: Line 226:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Redirection = Same Window New Tab'''<br/>
'''Description:''' Verify setting a target causes a notification to open in the same window.<br/>
'''Description:''' Verify setting a target causes a notification to open in the same window.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 221: Line 239:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Target = _blank'''<br/>
'''Description:''' Verify setting a _blank target causes a notification to open in the new window.<br/>
'''Description:''' Verify setting a _blank target causes a notification to open in the new window.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 234: Line 252:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Multi/Repeat Message (Stacking)'''<br/>
'''Description:''' Verify clicking the pop Notification button causes the notification to display multiple times.<br/>
'''Description:''' Verify clicking the pop Notification button causes the notification to display multiple times.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 245: Line 263:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Hover Over Notification'''<br/>
'''Description:''' Verify the notification is not dismissed when hovering over the notification.<br/>
'''Description:''' Verify the notification is not dismissed when hovering over the notification.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 256: Line 274:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Hover Over Submenu'''<br/>
'''Description:''' Verify the notification is not dismissed when hovering over an item in the submenu (OS X only).<br/>
'''Description:''' Verify the notification is not dismissed when hovering over an item in the submenu (OS X only).<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 268: Line 286:




'''Name:''' TBD<br/>
'''Name:''' '''Notification Settings: Preferences - Blocking'''<br/>
'''Description:''' Verify clicking Notification Settings in the notification causes the preferences page to appear.<br/>
'''Description:''' Verify clicking Notification Settings in the notification causes the preferences page to appear.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 279: Line 297:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Preferences - Choose'''<br/>
'''Description:''' Verify allowing notifications reports correctly in about:preferences#content<br/>
'''Description:''' Verify allowing notifications reports correctly in about:preferences#content<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 290: Line 308:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Preferences - Blocking'''<br/>
'''Description:''' Verify blocking notifications reports correctly in about:preferences#content<br/>
'''Description:''' Verify blocking notifications reports correctly in about:preferences#content<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 301: Line 319:




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Title > Size and Text Wrapping'''<br/>
'''Description:''' Verify a long "Title" doesn't cause the notification to resize.<br/>
'''Description:''' Verify a long "Title" doesn't cause the notification to resize.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 307: Line 325:
# Set "Title"to a a long string.
# Set "Title"to a a long string.
# Click "pop Notification" button.
# Click "pop Notification" button.
# Verify the title text truncates and doesn't resize notification popup.
# Verify the title text truncates and doesn't re-size notification popup. Width remains static, length may adjust.
# <code>teardown()</code>
# <code>teardown()</code>




'''Name:''' TBD<br/>
'''Name:''' '''Notification: Body > Size ant Text Wrapping'''<br/>
'''Description:''' Verify a long "Body Text" doesn't cause the notification to resize.<br/>
'''Description:''' Verify a long "Body Text" doesn't cause the notification to resize.<br/>
'''Steps:'''<br/>
'''Steps:'''<br/>
Line 317: Line 335:
# Set "Body Text"to a a long string.
# Set "Body Text"to a a long string.
# Click "pop Notification" button.
# Click "pop Notification" button.
# Verify the body text truncates and doesn't resize notification popup.
# Verify the body text truncates and doesn't re-size notification popup. Width remains static, length may adjust.
# <code>teardown()</code>
# <code>teardown()</code>


'''Name:''' '''Notification: Title Characters & Numbers'''<br/>
'''Description:''' Verify title can contain special characters like % or /.<br/>
'''Steps:'''<br/>
# Open https://pdehaan.github.io/push-notification-test/
# Set "Title Text"to a a long string which contains special characters like %.
# Click "pop Notification" button.
# Verify the title text is accurately displayed.
# <code>teardown()</code>
'''Name:''' '''Notification: Body Text Characters & Numbers'''<br/>
'''Description:''' Verify body can contain special characters like % or /.<br/>
'''Steps:'''<br/>
# Open https://pdehaan.github.io/push-notification-test/
# Set "Body Text"to a a long string which contains special characters like % or an emoji like :D
# Click "pop Notification" button.
# Verify the body text is accurately displayed.
# <code>teardown()</code>
'''Name:''' '''Push:  Register Service Worker'''<br/>
'''Description:''' Verify registering a service worker causes it to appear in about:serviceworkers.<br/>
'''Steps:'''<br/>
# setup()
# Verify HTML output is:
    registering service worker
    registered service worker. scope: https://pdehaan.github.io/push-notification-test/
# Click "Check Service Worker" button.
# Verify HTML output is:
    checking service worker
    Service worker active
# Open about:serviceworkers
# Verify service worker is registered to https://pdehaan.github.io/ origin.
# Go back to https://pdehaan.github.io/push-notification-test/
# Click "Unregister Service Worker" button.
# Open about:serviceworkers
# Verify "No Service Workers registered." message (refresh page if it was previously open tab).
# teardown()
'''Name:''' '''Push: Service Worker'''<br/>
'''Description:''' Verify sending a message to a service worker causes it to echo the message.<br/>
'''Steps:'''<br/>
# setup()
# Click "subscribe to push" button.
# Click "sendMsgToSW" button.
# Verify "messageChannel.port1.onmessage: SW echo: HelloWorld" output on page.
# Change text box value to "999".
# Click "sendMsgToSW" button.
# Verify "messageChannel.port1.onmessage: SW echo: 999" output on page.
# teardown()
'''Sign off'''
Criteria
All the test cases must be executed. All the blocker, critical, major bugs have been fixed.


== PUSH API ==
== PUSH API ==

Navigation menu