Minorbug Logo

File Upload Testing - Key Test Cases for File Input Validation and User Experience

File upload functionality must be reliable, secure, and user-friendly. This comprehensive guide outlines key test cases for validating file input behavior, including supported file types, size limits, drag-and-drop features, filename handling, error messages, and upload progress indicators. Use these test scenarios to ensure smooth, accessible, and secure file uploads across all user environments.

NrTest Idea
1Check the parent page testcases for general input field testing guidelines
2Check that file selection modal opens up when you press at the field
3Check what happens when you close file selection modal without selecting any file
4Check if file selection modal should display specific file types by default
5Check that it is visibly clear for the user that file upload is still in progress
6Check if it is possible to upload a new file while the old upload is still in progress
7Check if it possible to cancel file upload that is already in progress
8Check if it is possible to remove the selected file from the field
9Check if it should be possible to upload multiple files
10Check if the file can also be uploaded with drag and drop. Try to upload multiple files at once with drag and drop
11Check that only allowed file types can be uploaded
12Check what is maximum file size that can be uploaded. An error should be displayed if this limit is exceeded
13Check what is maximum file name length that can be uploaded. An error should be displayed if this limit is exceeded
14Check if the same file is allowed to upload multiple times (with same file name)
15Check how symbols and special characters in the file name are handled. Different file systems allow different characters in the file name
16Try to upload a file that has same file name as is the extension (for example pdf.pdf)
17Check that it is not possible to do XSS attack or SQL injection with the filename
18Check how characters from different alphabets are handled - for example, Latin alphabet with diacritics, Greek, Chinese, Cyrillic, Japanese, etc
19Check what happens when uploading an empty file
20Check how file uploading behaves when the network connection is lost
21If it is possible to select only one file then check what happens when you change the file after the original selection
22If there is a check that you cant upload file with same name multiple times, then check what happens if files have same name but different extension (test.pdf and test.xml for example)
23If there is a check that you cant upload file with same name multiple times, then check if you can upload file again after cancelling the upload process (deleting file from selected files or pressing 'Cancel' and file upload form)
24If there is a check that you cant upload file with same name multiple times, then check if restrictions works with both file selection and also with drag&drop