This document provides detailed information about the OCM Test Suite available in the Development Stockpile project.
The OCM Test Suite is designed to validate interoperability between different EFSS platforms implementing the OCM standard. It provides comprehensive testing for various sharing scenarios and authentication mechanisms.
For detailed information about which platforms and versions can interoperate with each other, please refer to our Platform Compatibility Matrix.
- Nextcloud (v27.x, v28.x, v30.x)
- ownCloud (v10.x)
- OCM Stub (v1.x)
- Seafile (v11.x)
- OCIS (v5.x)
- Cypress for end-to-end testing
- Docker for containerized environments
- GitHub Actions for CI/CD
- Custom test runners and utilities
Before running any tests, please check the Platform Compatibility Matrix to ensure your target platforms and versions are compatible with the feature you want to test.
Verify authentication mechanisms across platforms.
./dev/ocm-test-suite.sh login nextcloud v30.0.2 ci chrome
- User authentication flow
- Session management
- Error handling for invalid credentials
- Two-factor authentication (if configured)
- Token-based authentication
Test public link sharing capabilities between platforms.
./dev/ocm-test-suite.sh share-link nextcloud v30.0.2 ci chrome owncloud v10.15.0
- Link creation and validation
- Cross-platform link access
Validate direct file sharing between users on different platforms.
./dev/ocm-test-suite.sh share-with nextcloud v30.0.2 ci chrome nextcloud v30.0.2
- User-to-user sharing
- Group sharing
- Share acceptance/rejection
- Notification delivery
Test user invitation workflows between platforms.
./dev/ocm-test-suite.sh invite-link nextcloud-sm v27.1.11-sm ci chrome owncloud-sm v10.15.0-sm
- Invitation creation and validation
- Invitation acceptance flow
- User provisioning process
- Cross-platform user linking
- Docker and Docker Compose installed
- Required Docker images pulled
- Pull required images:
./docker/pull/all.sh
./dev/ocm-test-suite.sh <category> <platform1> <version1> <mode> <browser> [platform2] [version2]
Parameters:
category
: Test category (login, share-link, share-with, invite-link)platform1
: First platform (nextcloud, owncloud, ocmstub, seafile, ocis)version1
: Version of first platformmode
: Test mode (dev/ci)browser
: Browser for testing (chrome/firefox)platform2
: (optional) Second platform for cross-platform testsversion2
: (optional) Version of second platform
cypress.config.js
: Cypress configuration
- Workflow files are in
.github/workflows/
- Each workflow tests specific platform combinations
- Tests run on pull requests and main branch
-
Container Startup Issues
# Check container logs docker logs <container_name>
-
Network Problems
# Verify network connectivity docker network inspect testnet
-
Test Failures
- Check Cypress screenshots:
cypress/screenshots/
- Review test videos:
cypress/videos/
- Check test logs:
cypress/logs/
- Check Cypress screenshots: