mirror of
https://github.com/aliasvault/aliasvault.git
synced 2026-02-05 11:53:36 -05:00
104 lines
2.5 KiB
Markdown
104 lines
2.5 KiB
Markdown
# iOS Testing Guide
|
|
|
|
This guide explains how to run the iOS test suites for the AliasVault mobile app.
|
|
|
|
## Overview
|
|
|
|
The iOS app has two test targets:
|
|
|
|
1. **AliasVaultUITests** - End-to-end UI tests that test full user flows
|
|
2. **VaultStoreKitTests** - Unit tests for the native VaultStoreKit framework
|
|
|
|
## Prerequisites
|
|
|
|
- macOS with Xcode installed (15.0+)
|
|
- iOS Simulator configured
|
|
- Node.js 20+
|
|
- CocoaPods dependencies installed (`cd apps/mobile-app && npx pod-install`)
|
|
- For UI tests: Local API server running at `http://localhost:5092`
|
|
|
|
## Running Tests
|
|
|
|
### Via Xcode
|
|
|
|
1. Open the project in Xcode:
|
|
```bash
|
|
cd apps/mobile-app/ios
|
|
open AliasVault.xcworkspace
|
|
```
|
|
|
|
2. Select a simulator (e.g., iPhone 16 Pro)
|
|
|
|
3. Run tests:
|
|
- **All tests**: `Cmd + U` or Product > Test
|
|
- **Specific test class**: Click the diamond icon next to the test class in the Test Navigator
|
|
- **Single test**: Click the diamond icon next to a specific test method
|
|
|
|
### Via Command Line (xcodebuild)
|
|
|
|
#### Run All Tests
|
|
|
|
```bash
|
|
cd apps/mobile-app/ios
|
|
|
|
# Run all tests on iPhone 17 Pro simulator
|
|
xcodebuild test \
|
|
-workspace AliasVault.xcworkspace \
|
|
-scheme AliasVault \
|
|
-destination 'platform=iOS Simulator,name=iPhone 17 Pro' \
|
|
-resultBundlePath ./test-results
|
|
```
|
|
|
|
#### Run UI Tests Only
|
|
|
|
```bash
|
|
xcodebuild test \
|
|
-workspace AliasVault.xcworkspace \
|
|
-scheme AliasVault \
|
|
-destination 'platform=iOS Simulator,name=iPhone 17 Pro' \
|
|
-only-testing:AliasVaultUITests
|
|
```
|
|
|
|
#### Run VaultStoreKit Unit Tests Only
|
|
|
|
```bash
|
|
xcodebuild test \
|
|
-workspace AliasVault.xcworkspace \
|
|
-scheme AliasVault \
|
|
-destination 'platform=iOS Simulator,name=iPhone 17 Pro' \
|
|
-only-testing:VaultStoreKitTests
|
|
```
|
|
|
|
#### Run a Specific Test
|
|
|
|
```bash
|
|
# Run a specific test class
|
|
xcodebuild test \
|
|
-workspace AliasVault.xcworkspace \
|
|
-scheme AliasVault \
|
|
-destination 'platform=iOS Simulator,name=iPhone 17 Pro' \
|
|
-only-testing:AliasVaultUITests/AliasVaultUITests
|
|
|
|
# Run a specific test method
|
|
xcodebuild test \
|
|
-workspace AliasVault.xcworkspace \
|
|
-scheme AliasVault \
|
|
-destination 'platform=iOS Simulator,name=iPhone 17 Pro' \
|
|
-only-testing:AliasVaultUITests/AliasVaultUITests/test01AppLaunch
|
|
```
|
|
|
|
#### With Custom API URL (for UI tests)
|
|
|
|
```bash
|
|
API_URL="http://your-server:5092" xcodebuild test \
|
|
-workspace AliasVault.xcworkspace \
|
|
-scheme AliasVault \
|
|
-destination 'platform=iOS Simulator,name=iPhone 17 Pro' \
|
|
-only-testing:AliasVaultUITests
|
|
```
|
|
|
|
### List Available Simulators
|
|
|
|
```bash
|
|
xcrun simctl list devices available
|
|
``` |