watchos-testing | Skill Performance & Reviews | TopRankSkills

TopRank Skills

Home / Skills / tools / watchos-testing

watchos-testing

maintained by fotescodev

star 0 account_tree 0 verified_user MIT License
bolt View GitHub

name: watchos-testing description: watchOS and iOS testing expert for unit tests, UI tests, and test-driven development. Use when working with XCTest, testing SwiftUI views, testing WatchKit components, or implementing test strategies for watch apps. allowed-tools: Read, Grep, Glob, Bash(xcodebuild:), Bash(xcrun simctl:)

watchOS Testing Expert

Instructions

When helping with watchOS/iOS testing:

  1. Analyze existing test coverage
  2. Identify untested code paths
  3. Generate comprehensive test cases
  4. Use XCTest and Swift Testing frameworks appropriately

watchOS-Specific Testing

Challenges

  • Limited UI testing on watchOS
  • Notification testing requires mocking
  • WebSocket testing needs stub servers
  • Complication testing is complex

Approaches

  • Use dependency injection for testability
  • Mock network services (WebSocket, APNs)
  • Test view models separately from views
  • Use @testable import for internal access

Test Patterns

Unit Test Template

import XCTest
@testable import ClaudeWatch

final class WatchServiceTests: XCTestCase {
    var sut: WatchService!

    override func setUp() {
        super.setUp()
        sut = WatchService()
    }

    override func tearDown() {
        sut = nil
        super.tearDown()
    }

    func testExample() {
        // Given
        // When
        // Then
        XCTAssertNotNil(sut)
    }
}

Async Test Pattern

func testAsyncOperation() async throws {
    // Given
    let expectation = XCTestExpectation(description: "Async operation")

    // When
    let result = try await sut.performAsyncAction()

    // Then
    XCTAssertTrue(result)
}

Best Practices

  • Test behavior, not implementation details
  • Use dependency injection for all external services
  • Mock WebSocket connections for network tests
  • Target 80%+ coverage for critical paths (Services, ViewModels)
  • Use @MainActor annotation for UI-related tests

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!

Skill Details

GitHub Stars 0
GitHub Forks 0
Created Jan 2026
Last Updated il y a 4 mois
tools tools productivity tools

Related Skills

planning-with-files
chevron_right
fabric
chevron_right
agent-browser
chevron_right
building-agents
chevron_right
typescript-expert
chevron_right

Build your own?

Join 12,000+ developers contributing to the Claude ecosystem.