invertase / notifee

⚛️ A feature rich notifications library for React Native.
https://notifee.app
Apache License 2.0
1.88k stars 227 forks source link

e2e test suite enhancements #1126

Open mikehardy opened 1 month ago

mikehardy commented 1 month ago

This was posted by @izakfilmalter and it is (in my opinion) a great set of tests to perform prior to releasing an app that uses Notifee, or ideally by Notifee as part of e2e / integration test suite


It seems to me that there is not a thorough testing process for releases. I have the following testing process for both iOS and Android which would be good to mirror at some level. I get the desire for automated testing, but every release I run into an issue with FCM + Notifee.

  1. App Quit Test
    1. Quit Open Test
      1. Quit the app.
      2. Trigger test notification.
      3. Tap on notification.
      4. App should open to the screen for the notification.
    2. Background Open Test
      1. Quit the app.
      2. Trigger test notification.
      3. Open the app, and dismiss it. The app must still be open in the background.
      4. Tap on notification.
      5. App should open to the screen for the notification.
    3. Foreground Open Test
      1. Quit the app.
      2. Trigger test notification.
      3. Open the app. The app must still be open in the foreground.
      4. Tap on notification.
      5. App should open to the screen for the notification.
  2. App Background Test
    1. Quit Open Test
      1. Open the app, and dismiss it. The app must still be open in the background.
      2. Trigger test notification.
      3. Quit the app after the notification has displayed.
      4. Tap on notification.
      5. App should open to the screen for the notification.
    2. Background Open Test
      1. Open the app, and dismiss it. The app must still be open in the background.
      2. Trigger test notification.
      3. Tap on notification.
      4. App should open to the screen for the notification.
    3. Foreground Open Test
      1. Open the app, and dismiss it. The app must still be open in the background.
      2. Trigger test notification.
      3. Quit the app after the notification has displayed.
      4. Open the app. The app must still be open in the foreground.
      5. Tap on notification.
      6. App should open to the screen for the notification.
  3. App Foreground Test
    1. Quit Open Test
      1. Open the app. The app must still be open in the foreground.
      2. Trigger test notification.
      3. Quit the app after the notification has displayed.
      4. Tap on notification.
      5. App should open to the screen for the notification.
    2. Background Open Test
      1. Open the app. The app must still be open in the foreground.
      2. Trigger test notification.
      3. Dismiss the app. The app must still be open in the background.
      4. Tap on notification.
      5. App should open to the screen for the notification.
    3. Foreground Open Test
      1. Open the app. The app must still be open in the foreground.
      2. Trigger test notification.
      3. Quit the app after the notification has displayed.
      4. Open the app. The app must still be open in the foreground.
      5. Tap on notification.
      6. App should open to the screen for the notification.

Originally posted by @izakfilmalter in https://github.com/invertase/notifee/issues/621#issuecomment-1383115908