diff --git a/docs/ocis/development/beta-testplan.md b/docs/ocis/development/beta-testplan.md new file mode 100644 index 000000000..5980b7555 --- /dev/null +++ b/docs/ocis/development/beta-testplan.md @@ -0,0 +1,129 @@ +--- +title: "Beta testplan" +date: 2022-03-24T00:00:00+00:00 +weight: 37 +geekdocRepo: https://github.com/owncloud/ocis +geekdocEditPath: edit/master/docs/ocis/development +geekdocFilePath: beta-testplan.md +--- + +## user / groups from LDAP + +- connect ocis to your preferred LDAP server TODO link documentation +- create users and groups in LDAP +- start ocis with basic auth `OCIS_INSECURE=true PROXY_ENABLE_BASIC_AUTH=true bin/ocis server` + +| Test Case | Expected Result | Example / Comment | +|-------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------|----------------------------| +| share file / folder to a group | member of the group can access shared item | TODO curl commands | +| share file / folder to a group, remove member from group in LDAP | removed member should not have access to the shared item | TODO curl commands | +| share file / folder to a group with different permissions, as receiver try to violate the permissions | receiver should not be able to violate the permissions | TODO curl commands | +| try to login with wrong credentials | login should not be possible | TODO curl commands | +| set a quota in LDAP, upload files till the quota is exceeded | upload should work till quota is full, uploads should not work when quota is full | **Is that even possible?** | +| try to access files / folders of other users | access should not be possible | TODO curl commands | +| try to share with non-existing users and groups | sharing should not be possible | TODO curl commands | +| try to share with user/groups-names that contain special characters | sharing should be possible, access shares with that user does not create any problems | TODO curl commands | + +## parallel deployment + +- setup oC10 and ocis is parallel TODO documentation link +- create users and groups in LDAP + +| Test Case | Expected Result | Example / Comment | +|------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------|----------------------------| +| share file / folder to a group in one implementation (use different permissions), access the items with the other implementation, try to violate the permissions | receiver should not be able to violate the permissions | TODO curl commands | +| share file / folder to a group, remove member from group in LDAP, try to access items with the removed member from both implementations | removed member should not have access to the shared item | TODO curl commands | + +## Spaces + +Prerequisite: +- create a new user TODO curl commands +- give the user the "Admin" role TODO curl commands + +| Test Case | Expected Result | Example / Comment | +|---------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------|---------------------------------------------------------------------------------| +| create a space | space should exist | TODO curl commands | +| create a space with special characters as a name & description | space should exist | TODO curl commands / **what are valid characters for space name/ description?** | +| create a space, delete the space | space should not exist | TODO curl commands | +| create a space, share the space with a user | space should be accessible | TODO curl commands | +| create a space, share the space with a group | space should be accessible, space content is shared among all users | TODO curl commands | +| create a space, share the space with a group, disable the space | space should not be accessible | TODO curl commands | +| create a space, disable the space, try to share the space | sharing the space should not be possible | TODO curl commands | +| create & share a space with a group with viewer role, do CRUD file/folder operations | space content is readable but neither space not content should not be writable | TODO curl commands | +| create & share a space with a group with editor role, do CRUD file/folder operations | space and content should be writable | TODO curl commands | +| create a space, try CRUD file/folder operations on the space with a user that its not shared with | space and content should not be accessible | TODO curl commands | +| create a space with a quota, share the space, upload files till the quota is exceeded | upload should work till quota is full, uploads should not work when quota is full | TODO curl commands | + + +## Web + +Prerequisite: +- connect ocis to your preferred LDAP server +- create users and groups in LDAP +- Use your preferred browser + +| Test Case | Expected Result | Comment | +|--------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------|---------| +| Login with the created user | Admin logs in. | | +| Create a text file. | Text editor can open, file is saved. | | +| Create a text file with special characters as name | file is created if the name is legal otherwise an error is displayed | | +| Modify a text file. | File can be modified, no problems found. | | +| Rename a file. | File is renamed. | | +| Upload a file. | File is uploaded, no problems found. | | +| Upload multiple files at once. | Files are uploaded, no problems found. | | +| delete all content of a folder at once. | Folder is cleanded, items are visible in the trashbin | | +| Overwrite a file by uploading a new version. | File is uploaded and overwritten, file versions are displayed | | +| Overwrite a file by uploading a new version, restore the original version. | File is restored correctly | | +| upload a huge file | File is uploaded, no problems found. | | +| upload a huge file, cancel the upload, restart the upload | File is uploaded, no problems founnd. | | +| Remove a file. | File is removed correctly, it appears in the trashbin. | | +| Restore the deleted file from trashbin | File is restores correctly | | +| Remove multiple files that have the same name but are located in different folders | Files are removed correctly, they appear in the trashbin. | | +| Restore some of the deleted files from trashbin | Files are restored correctly in the correct folders. | | +| Restore some of the deleted files from trashbin, but delete the original containing folder before | Files are restored correctly | | +| Clean files from the trashbin | files are permanetly deleted | | +| Create a lot of files, delete a lot of files, empty the trashbin | trashbin is cleaned | | +| Move a file inside a folder. | There are not problems on the process. | | +| Move a file inside a folder that already contains a file with the same name | File is not moved, content in the destination is not overwritten | | +| Create a folder. | Folder is created, no MKCOL problems appear. | | +| Create a folder with special characters as name | Folder is created if the name is legal otherwise an error is displayed | | +| Create a folder with a name of an already existing file/folder | Folder is not created, an error is displayed | | +| Create a folder with a lot of subfolders, use special characters in the name | Folder is created, no MKCOL problems appear. | | +| Delete a folder. | Folder is removed. | | +| Move a folder inside another. | No problems while moving the folder. | | +| open images in mediaviewer | files are displayed correctly. | | +| open videos in mediaviewer | files are displayed correctly. | | +| switch through videos and images in mediaviewer | files are displayed correctly. | | +| Share a file by public link. | Link is created and can be accessed. | | +| Share a folder by public link. | Link is created and can be accessed. | | +| Share a file with another user. | It is shared correctly. | | +| Share a folder with another user. | It is shared correctly. | | +| Share a file with a group. | It is shared correctly. | | +| Share a folder with a group. | It is shared correctly. | | +| Share a folder with userB giving edit permissions. As userB do CRUD operations on items inside the received folder | userB doesn't find any problem while interacting with files. | | +| Use your mobile device to access the UI | All elements reachable | | + +## Desktop Client + +Prerequisite: +- connect ocis to your preferred LDAP server +- create users and groups in LDAP +- use your preferred OS for the desktop client + +| Test Case | Expected Result | Comment | +|---------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------|---------| +| Set up two clients with the same user. Change files, add some, delete some, move some, create folders. | Changes sync properly in both clients without errors. | | +| Share a file using contextual menu with userB. | Option to share appears in the contextual menu and file is correctly shared. | | + + +## Mobile Clients (iOS || Android) + +Prerequisite: +- connect ocis to your preferred LDAP server +- create users and groups in LDAP + +| Test Case | Expected Result | Comment | +|-----------------------------------------------|------------------------------------------|---------| +| Connect to server, see files, download one. | No problems while downloading. | | +| Upload a file using mobile client. | No problems while uploading. | | +| Share a file with userB using mobile client. | File is correctly shared. | |