gallery-app

* Test plan for component: gallery-app

Dependents/Clients

  • System Settings (choosing background image)
  • Address Book App (choosing profile picture)
  • Camera App (launching, saving photo)
  • Browser app (saving photo, pending..)
  • Messaging app (saving photo, pending..)

Test Plan

This test plan is not supposed to be complete; use it to guide your manual testing so they dont miss big functional areas that are part in the component; also this should be used as guideline to inspire the exploratory testing which should be adapted smartly based on the real content of a MP

  • Install latest (trusty-proposed) image on phone
  • Install freshly build MPs that are needed for landing
  • Ensure that all AP tests pass on the device.
  • Test taking multiple pictures using the Camera and then launching Gallery from Camera and ensuring photos exist in Events view
  • Test opening photos from event view and navigating between them using right/left swipe gesture
  • Verify that swiping quickly through photos will not zoom them accidently.
  • Test that gallery app launches non-fullscreen (indicator panel visible). It should enter fullscreen mode whenever opening an picture or an albums. It should exit fullscreen mode only when returning to top-level Events, Photos, or Albums view.
  • Test pinch to zoom after opening a picture
  • Test rotating and cropping a picture
  • Test rotating the phone and ensure photo rotates
  • Test that all photos show up in photo view
  • Test that you can create an album and add pictures to it
  • Test that you can launch the camera from within the gallery and then switch back.
  • Add videos to the device in ~/Videos directory. Ensure they are not deleted from disk after running gallery.
  • Click on a video to play it back. Verify that the video is opened in the mediaplayer-app. Verify pressing back button in mediaplayer-app will return to the gallery.
  • System settings: test that you can select a background image from the gallery
  • Address Book app: test that you can select an image from the gallery for a contact's profile picture
  • Test Import
  • Test album cancellation
    • go to album view and delete any existing albums
    • press the "+" button to add an Album
    • press the back button from the header
    • verify the blank album was not added to the list
    • repeat this quickly multiple times and verify the app doesn't freeze
    • now create a new album and add some pictures, verify the album shows up in the list when you return to album view
  • Test open from scope
    • make sure all apps are closed
    • open the camera and take a picture
    • Go to the "My Photos" scope
    • Click on the picture you just took with camera
    • Click the "open" button
    • Verify the gallery-app is launched and the picture is displayed. If this is the first time gallery-app is open Events view should be displayed. Otherwise gallery-app should be opened on the same view it was when it was closed.
  • Test .gif files
    • connect phone to computer and copy over some .gif files into Pictures directory
    • launch gallery and make sure the pictures are properly displayed in the events and photos view
    • make sure that editing functions are disabled for gif images (there is no support in backend for this)
  • Test importing files
    • Open gallery
    • Move to the photos view
    • Open the browser-app/Gmail and import some photo using gallery
    • When the process is finished choose do not open the photo in gallery right now
    • Move back to gallery-app, the Events view should be the current view
  • Test selection mode
    • Open Photos view
    • press and hold on a photo to select it
    • click anywhere on the photo (not on the selection box) to open it fullscreen with header visible
    • verify you can swipe through the pictures
    • verify you can click on the checkmark on the toolbar to select that picture, or on x to deselect the picture if it was already selected.
    • verify that when returning to the Photos view the expected pictures are selected
    • the same test can be performed on Events view
    • the same test can be performed when in content-picking mode (i.e. selecting picture from gallery to use as background in system-settings)
  • Test adding a corrupted media file:
    • Corrupted Sample Video

    • Make sure that the thumbnail in Photos/Events view for this file is an icon representing it was not able to load correctly
    • Click on the thumbnail and make sure that there is a text explaining gallery was not able to load it
    • Add this file to an album:
      • Make sure the preview on album page shows the same icon
      • Make sure the preview on album cover shows the same icon
  • Test .png files:
    • Transparent Sample PNG

    • Add the attached .png file to gallery
    • Make sure the thumbnail is displayed correctly on Events/Photos view (after bug#1541836 fixed)
    • Click on the thumbnail and make sure the displayed image has a checkered background under transparency
  • Test scanning process
    • Make sure you have media files under ~/Pictures, ~/Videos and some other path under home (i.e ~/Documents). Also add some media files on subdirs of those paths.
    • Open gallery-app and make sure that only media files under ~/Pictures and ~/Videos are displayed on Events and Photos page. Do not take files under /media/phablet/* in account for this test.
    • Make sure you have an sdcard connected to the device and available under /media/phablet/<sdcard_id>/

    • Make sure you have media files available on folders like /media/phablet/<sdcard_id>/Pictures/, /media/phablet/<sdcard_id>/Videos/, /media/phablet/<sdcard_id>/Music/, /media/phablet/<sdcard_id>/Documents/ and some other paths under /media/phablet/<sdcard_id>.

    • Open gallery-app and make sure that all media files on the sdcard are available on Events and Photos page EXCEPT the ones under /media/phablet/<sdcard_id>/Music/ and /media/phablet/<sdcard_id>/Documents/

Stress Testing

Create a library of thousands of photos to do performance testing. Helper script to duplicate a given photo 2000 times:

  • On internal disk

for n in $(seq -w 2000); do cp <reference_picture>.jpg ~/Pictures/picture_${n}.jpg; done
  • On SD card

for n in $(seq -w 2000); do cp <reference_picture>.jpg /media/phablet/<someId>/Pictures/picture_${n}.jpg; done

Several stories need testing in this scenario:

  1. Opening up the app should not freeze or be delayed
  2. You should see a "Loading..." screen (for up to ~30 seconds depending on how many photos/videos are on the SD card) until the first of the photos start to be displayed. Other photos will then continue to be loaded in the background
  3. All navigation and operations (open photo, create album, navigate photos, delete photo, edit photo) should functional during the background loading from SD card, but some might be slightly delayed due to the background operations running.
  4. While photos from SD card background loading, verify that you can take a picture with the camera and it will show up in the Events view. It might be slightly delayed until it shows up due to background processing.
  5. Close the gallery-app and remove the SD card
  6. Re-launch and ensure only the pictures on internal disk are displayed.

Process/Merges/TestPlan/gallery-app (last edited 2016-09-28 13:53:41 by artmello)