Run Apex Tests Locally.
Ship Faster.

Your trusty companion for Salesforce development. Test Apex code locally in milliseconds, predict merge conflicts before they happen, and get instant feedbackβ€”all without deploying to an org.

Free for teams up to 5 users

Everything you need to test Apex locally

No org required. No waiting for deployments. Just fast, reliable tests.

Local Test Execution

Run tests in milliseconds, not minutes. Execute your entire test suite locally without waiting for Salesforce deployments or org connections.

Mock Salesforce Runtime

Full DML operations, SOQL engine, and governor limits built-in. Test against standard Salesforce objects, Custom Objects, Custom Metadata Types, External Objects, Big Objects, and more with realistic behavior.

Conflict Prediction

Analyze branches and predict merge conflicts before they happen. Know which tests will break when branches collideβ€”before the PR.

CI/CD Ready

Native integration with GitHub Actions, GitLab CI, and Jenkins. Generate JUnit reports, run in parallel, and fail fast on errors.

AI Agent Integration

MCP (Model Context Protocol) server enables seamless integration with Cursor, Claude Code, and other AI coding assistants. Let AI agents run tests and analyze conflicts automatically.

See the difference

From minutes of waiting to instant feedback

Before SquireX
1 Write test code
2 Deploy to scratch org/ Sandbox/ Production org ~2-5 minutes
3 Run tests in org ~5-10 minutes
4 View results
5 Fix and repeat...
Total time per iteration ~10 minutes
vs
With SquireX
1 Write test code
2 Run locally instant
Total time per iteration ~7 milliseconds
Terminal
$ squirex run -d force-app/main/default/classes

βœ“ AccountUtilsTest.testCreateAccount (2ms)
βœ“ AccountUtilsTest.testBulkInsert (1ms)
βœ“ ContactServiceTest.testLinkToAccount (1ms)
βœ“ ContactServiceTest.testValidation (0ms)
βœ“ OpportunityHandlerTest.testStageChange (1ms)
βœ“ OpportunityHandlerTest.testAmountCalculation (1ms)
βœ“ OpportunityHandlerTest.testBulkUpdate (1ms)

═══════════════════════════════════════════════════════════════
                         TEST RESULTS                          
═══════════════════════════════════════════════════════════════

Total:   7
Passed:  7 βœ“
Failed:  0 βœ—
Errors:  0 ⚠
Skipped: 0 β—‹
Duration: 7ms

═══════════════════════════════════════════════════════════════
Conflict Analysis
$ squirex conflict -b main,feature/new-accounts --simulate

═══════════════════════════════════════════════════════════════
                    CONFLICT PREDICTION REPORT                  
═══════════════════════════════════════════════════════════════

Analyzing branches: main ↔ feature/new-accounts

File Conflicts:

πŸ”΄ HIGH   AccountService.cls
             Method: createAccount()
             Lines: 45-67 (main) vs 45-72 (feature)
             Impact: Both branches modify same method logic

πŸ”΄ HIGH   ContactHandler.cls
             Method: beforeInsert()
             Lines: 12-28 (main) vs 12-35 (feature)
             Impact: Trigger logic conflict - will require manual merge

🟑 MEDIUM OpportunityUtils.cls
             Method: calculateRevenue()
             Lines: 89-95 (main) vs 91-98 (feature)
             Impact: Adjacent changes - may conflict during merge

🟑 MEDIUM AccountUtilsTest.cls
             Method: testBulkInsert()
             Lines: 34-48 (main) vs 34-52 (feature)
             Impact: Test method modified in both branches

🟒 LOW    EmailService.cls
             Method: sendNotification()
             Lines: 120-125 (main) vs 122-127 (feature)
             Impact: Minor formatting differences

🟒 LOW    README.md
             Lines: 45-50 (main) vs 45-52 (feature)
             Impact: Documentation update - auto-mergeable

═══════════════════════════════════════════════════════════════
                         SUMMARY                                
═══════════════════════════════════════════════════════════════

Total Conflicts:    6
High Severity:   2 πŸ”΄
Medium Severity: 2 🟑
Low Severity:     2 🟒

⚠️  Warning: High severity conflicts detected!
Recommendation: Review and resolve conflicts before merging.

═══════════════════════════════════════════════════════════════

AI-Powered Workflows with MCP

Enable AI coding assistants to automatically run tests, analyze conflicts, and extract code structure

AI Agent Workflow
AI Agent: I'll help you test the AccountUtils class.

β†’ squirex_run_tests({
     directory: "force-app/main/default/classes",
     pattern: "**/AccountUtilsTest.cls"
})

βœ“ AccountUtilsTest.testCreateAccount (2ms)
βœ“ AccountUtilsTest.testBulkInsert (1ms)
βœ“ AccountUtilsTest.testValidation (1ms)

AI Agent: All tests passed! Now checking for merge conflicts...

β†’ squirex_analyze_conflicts({
     branches: ["main", "feature/new-accounts"],
     simulate: true
})

Analyzing branches: main ↔ feature/new-accounts
🟑 MEDIUM AccountService.cls
             Method: createAccount()
             Impact: Adjacent changes detected

AI Agent: Found potential conflicts. Review recommended before merging.

═══════════════════════════════════════════════════════════════
AI Agent Workflow Complete
═══════════════════════════════════════════════════════════════

Enable MCP Server

1

Open VS Code Settings

Press Cmd/Ctrl+, or go to File β†’ Preferences β†’ Settings

2

Search for "SquireX"

Type "SquireX" in the settings search box

3

Enable MCP

Check the "Enable MCP" option, or add to your settings.json:

{
  "squirex.enableMcp": true
}

Simple, transparent pricing

Start free. Scale as your team grows.

Free

$0 forever
  • 5 uses per day
  • Local test execution
  • Mock runtime & SOQL
  • Conflict prediction
  • Community support
Get Started Free

Enterprise

Contact for pricing
  • Everything in Pro
  • CI/CD Integration
  • Single license for org
  • Dedicated support
  • SLA guarantees
Contact Sales

Built for Salesforce developers,
by Salesforce developers

SquireX was born from frustration with slow feedback loops. After years of waiting for deployments and watching CI pipelines crawl, I built the tool I always wanted. One that lets you test Apex code the way modern developers expect: instantly, locally, and reliably.

Whether you're building complex triggers, batch processes, or REST APIs, SquireX gives you the confidence to ship faster without sacrificing quality.

SquireX Creator of SquireX

Ready to ship faster?

Join developers who have already accelerated their Apex testing workflow.

Install Free Extension