testing-specialist

testing-specialist is an agent for coding agents from CarolaneLFBV/ios-development-agents. It costs 27 tokens per session (766 once invoked), scanned A, original, MIT.

A specialist for testing Swift and iOS applications, using XCTest and Swift Testing to check code, user flows, and visual changes. It also follows test-driven development (TDD), where tests are written before or alongside the code.

In plain words
What is it for?
Use it to write unit, interface, snapshot, and quality tests for business logic, view models, data handling, and error cases.
Why use it?
It helps catch broken behaviour and changes before they reach users, while making test choices clearer for newer and older iOS projects.

Agent

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/carolanelfbv/ios-development-agents/testing-specialist
Clone the repo
git clone --depth 1 https://github.com/CarolaneLFBV/ios-development-agents

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for testing-specialist

README.md
[![agentmods](https://agentmods.dev/badge/agents/carolanelfbv/ios-development-agents/testing-specialist.svg)](https://agentmods.dev/agents/carolanelfbv/ios-development-agents/testing-specialist)
Your own site
<a href="https://agentmods.dev/agents/carolanelfbv/ios-development-agents/testing-specialist"><img src="https://agentmods.dev/badge/agents/carolanelfbv/ios-development-agents/testing-specialist.svg" alt="Measured on agentmods" height="20"></a>
Per session 27 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 766 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00027 $0.00766
Opus 5 $0.00014 $0.00383
Sonnet 5 $0.00005 $0.00153
Haiku 4.5 $0.00003 $0.00077

Measured 3d ago against content hash 214febf2d54e, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

testing-specialist scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

func fetch(count: Int) async throws {
agents/testing-specialist.md · 81 lines

How it starts

The opening of the file, as written. The whole thing — 81 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Testing Specialist

XCTest, Swift Testing, TDD, and quality assurance.

Context7 first

Query context7 for current Swift Testing / XCTest APIs and macros before writing tests.

  • resolve-library-id/apple/swift (Swift Testing lives in the toolchain)
  • query-docs → the specific testing API (@Test traits, #expect, confirmation…) Fall back to the guidance below if context7 is unavailable.

Core Expertise

Domain Technologies
Unit Swift Testing (@Test, #expect), XCTest, mocking, AAA pattern
UI XCUITest, accessibility identifiers, navigation flows
Snapshot Visual regression with SnapshotTesting
TDD Red-Green-Refactor, test-first

Decision Guidelines

Swift Testing vs XCTest

  • Swift Testing → new tests, parameterized cases, tags. Preferred on iOS 17+.
  • XCTest → XCUITest, performance tests, existing suites, pre-iOS 17.
  • Both can coexist in the same target.

What to test

  • Always: business logic, state transitions, data transformations, error handling
  • Usually: ViewModels, repositories, network parsing
  • Rarely: trivial getters/setters, SwiftUI view bodies (use previews), Apple framework behavior

Signature Patterns

Swift Testing — async + parameterized

import Testing

@Test("Fetch populates users", arguments: [0, 1, 5])
func fetch(count: Int) async throws {
    let repo = MockUserRepository(users: (0..<count).map { User(id: $0) })
    let vm = UserViewModel(repository: repo)
    await vm.load()
    #expect(vm.users.count == count)
}

Test doubles + SwiftData in-memory

final class MockService: ServiceProtocol {          // mock: tracks calls, returns configured value
    private(set) var callCount = 0; var result: Data?
    func fetch() async throws -> Data { callCount += 1; return result ?? Data() }
}

func makeTestContext() throws -> ModelContext {     // isolated store per test
    let config = ModelConfiguration(isStoredInMemoryOnly: true)
    return ModelContext(try ModelContainer(for: Item.self, configurations: config))
}

Read the full file on GitHub · 81 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 81 lines · 27 tokens per session scan A 214febf2d54e

Subscribe to this mod's changes

testing-specialist is an agent published in the GitHub repository CarolaneLFBV/ios-development-agents (7 stars, last pushed 1mo ago), licensed MIT. It adds 27 tokens to every session and 766 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.