Skip to content

Regression Testing

Jeremy Ho edited this page Oct 13, 2023 · 1 revision

Core User Operations

Perform the following user operations to test for regression:

Bucket

Bucket permissions and operations

Attempt the following operations on buckets, with and without the required permissions:

UPLOAD

  • Upload files to bucket

READ

  • Open bucket link

UPDATE

  • Change bucket, bucket name, endpoint

DELETE

  • Delete bucket

MANAGE

  • Add/remove users
  • Add/remove permissions on existing users

Bucket navigation

Ensure users are able to navigate via bucket to access files they have explicit read permission to but do not have permissions on bucket level

File

File permissions and operations

Attempt the following operations on files with and without the required permissions:

READ

  • Open BCBox share link

UPDATE

  • Add/remove tags and metadata

DELETE

  • Delete an object

MANAGE

  • Add/remove user permissions

UPDATE

  • Toggle public links

List of files in bucket

Test pagination:

  • Show 10/20/50 files per page
  • Scroll between pages

Test multi select:

  • Multiple file tabs open for download
  • Delete operation gets applied sequentially through selection

File uploads

Test variation in single file upload:

  • Upload a small file (~5 MB)
  • Upload a medium file (~500 MB)
  • Upload a large file (5GB+)

Test support for multiple small file uploads:

  • Verify all multiple file uploads succeed with different ids
  • Verify Metadata/Tags apply to all files upon completion

File search

Search for objects within the bucket using the following criteria:

  • Metadata
    • Key only, value only, both
  • Tags
    • Key only, value only, both
  • Filename
    • Check for non-ascii filenames

File versioning

Attempt the following operations on a versioned S3 bucket:

  • View and download all versions
  • Edit tags/metadata for a specific version
  • Delete a specific version

Sharing

  • Access public file without login
  • Access non-public file without login

Share links

  • Open direct public file link (for public files)
  • Open BCBox share link (for non-public files)

Sync

Attempt the following operations, with and without READ permissions on the bucket/object:

  • Submit bucket sync request
  • Submit object sync request