Skip to main content

How to create custom test rules

Extend Aucert's AI-generated tests with custom rules tailored to your application's specific requirements.

warning

Custom test rules are an advanced feature planned for Phase 2. This page describes the intended design. Core test generation and execution work today without custom rules.

Planned capabilities

Custom assertions

Define app-specific pass/fail criteria that the AI uses during analysis:

aucert.config.yaml (planned)
rules:
assertions:
- name: "Brand colors only"
description: "Primary buttons must use #1E88E5 background"
scope: [user-flows]
- name: "No placeholder text"
description: "No 'Lorem ipsum' or 'TODO' text in any screen"
scope: [navigation, user-flows]

Skip rules

Exclude specific screens or flows from testing:

aucert.config.yaml (planned)
rules:
skip:
- screen: "DebugSettingsActivity"
reason: "Internal debug screen, not user-facing"
- flow: "AdminPanel*"
reason: "Admin flows tested separately"

Platform-specific overrides

Different behavior for different form factors:

aucert.config.yaml (planned)
rules:
overrides:
- when: { screen_width_dp: ">= 600" }
then: { confidence_threshold: 0.90 }
reason: "Tablet layouts need higher scrutiny"
- when: { os_version: ">= 14" }
then: { skip: ["LegacyPermissionFlow"] }
reason: "Android 14+ uses new permission model"

Current alternatives

While custom rules are in development, you can achieve similar results:

NeedCurrent workaround
Skip screensRemove the screen from your test APK's navigation graph
Adjust confidenceSet testing.confidence_threshold globally in config
Focus on specific flowsUse testing.scope to limit to navigation or user-flows
Platform-specific testingBuild separate APKs with different configs

What's next