nextcloud / nextcloud/desktop

End-to-End File Provider Tests

Open
#9,199 0 comments 1 reaction 1 assignee Claimed by @i2h3 View on GitHub
1. to develop feature: :file_folder: file provider os: :apple: macOS
Dominant language
C++
Stars
3.9k
Forks
1k
Avg merge
1d 17h
Merged PRs (30d)
123

Description

Evaluate the possibility and efficiency of using Xcode UI tests for end-to-end testing the file provider extension. I have implemented proof-of-work in past projects. This leverages the Xcode UI tests to programmatically control Finder through accessibility features to interact with our file provider extension. The UI test code then also can programmatically interact with the Nextcloud server directly through API calls to set up and assert server state.

## Challenges

- A lot of Finder can be controlled by localized labels only. Hence one requirement for the **test environment is English** being chosen as the display language of the system.
- How to clean and set up the client configuration with a test account automatically.

## References

- [Nextcloud Container Manager](https://github.com/i2h3/nextcloud-container-manager) is a Swift package by myself to programmatically control the deployment of local Nextcloud containers. This will be an important building block.
- [Nextcloud macOS Tests](https://github.com/i2h3/nextcloud-macos-tests) is my playground for this undertaking.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.