awesome-repositories.com
博客
MCP
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
google avatar

google/EarlGrey

0
View on GitHub↗
5,683 星标·734 分支·Objective-C·Apache-2.0·3 次浏览google.github.io/EarlGrey↗

EarlGrey

EarlGrey is an iOS UI automation test framework that enables writing and running automated tests simulating real user interactions. It provides a synchronized test execution engine that automatically waits for animations, network requests, and run-loop states to complete before performing test actions or assertions, producing stable and repeatable results across test runs.

The framework distinguishes itself through out-of-process interaction handling, managing system alerts and app switching during tests, and a pixel-level visibility checker that verifies UI elements are actually visible and interactable by comparing screenshots for pixel-level differences rather than just checking hierarchy presence. It also includes a remote method invocation bridge that allows test code to access application objects and state directly, and a screenshot-based element matching capability that identifies UI elements by capturing and comparing pixel data.

EarlGrey supports running tests from the terminal using standard build tools like xcodebuild, and provides capabilities for simulating taps and swipes through app-level touch events after confirming element visibility. The framework can be integrated with the standard iOS test runner for command-line execution.

Features

  • iOS UI Automation Tests - Provides a complete iOS UI automation test framework with synchronization, visibility checks, and system alert handling.
  • App Internal Queries - Accesses application objects and state directly from test code using remote method invocation.
  • Visibility Checkers - Verifies UI element visibility by comparing screenshots for pixel-level differences before interaction.
  • Visibility Verifications - Implements pixel-level screenshot comparison to verify UI element visibility before interaction.
  • Test-to-App Bridges - Provides a remote method invocation bridge for test code to access application objects and state directly.
  • Test Process Interaction Brokers - Manages system alerts and app switching during automated iOS UI tests from an external process.
  • Pixel-Level Visibility Matchers - Checks element visibility using pixel-level analysis rather than just hierarchy presence.
  • Pixel-Level Visibility Verifications - Verifies UI element visibility by comparing screenshots for pixel-level differences before performing actions.
  • System Alert Handlers - Provides out-of-process system alert interception and dismissal during iOS UI test execution.
  • App Idle Synchronizations - Waits for animations, network requests, and queues to finish before each test action for stable results.
  • iOS UI Automation Frameworks - Ships a complete iOS UI automation test framework with synchronization, visibility checks, and system alert handling.
  • User Interaction Simulation - Simulates realistic taps and swipes via app-level touch events after confirming element visibility.
  • UI Stability Waits - Waits for animations, network requests, and queues to finish before each interaction for consistent results.
  • System UI Cross-App Interactions - Performs out-of-process actions like handling system alerts and switching between apps during tests.
  • Synchronization Engines - Automatically waits for animations, network requests, and queues before performing test actions.
  • Test Idling Resources - Monitors animation, network, and run-loop states to defer test actions until the application becomes idle.
  • Remote App State Queries - Provides an interface to access application objects and state from test code using remote method invocation.
  • App Idle Waiters - Waits for the app to become idle before performing actions or assertions by tracking UI, network, and animation states.
  • Out-of-Process Touch Simulations - Ships out-of-process touch injection that simulates taps and swipes from the test runner process.
  • Screenshot-Based Element Matchers - Identifies UI elements by capturing and comparing pixel data instead of relying on accessibility identifiers.
  • Testing and Automation - iOS UI automation test framework by Google.
  • 测试框架 - iOS UI automation framework.

Star 历史

google/earlgrey 的 Star 历史图表google/earlgrey 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

EarlGrey 的开源替代方案

相似的开源项目,按与 EarlGrey 的功能重合度排序。
  • kif-framework/kifkif-framework 的头像

    kif-framework/KIF

    6,243在 GitHub 上查看↗

    KIF is a functional testing framework and UI automation tool for iOS. It enables the simulation of user interactions and the verification of application states by driving interface components through their defined accessibility attributes. The framework utilizes an actor-pattern action wrapper to group reusable interaction sequences and allows the definition of custom, high-level test steps through a method-extension action library. It performs in-process interface driving, interacting with the application directly within the same process to execute actions and validate view states. The tool

    Objective-C
    在 GitHub 上查看↗6,243
  • facebook/webdriveragentfacebook 的头像

    facebook/WebDriverAgent

    4,260在 GitHub 上查看↗

    WebDriverAgent is an on-device control agent and automation server that implements the WebDriver protocol for iOS devices. It serves as a bridge that enables the remote control of applications and the operating system on physical iOS devices and simulators for automated testing. The project provides a UI testing framework capable of interacting with on-screen elements, capturing screenshots, and simulating user gestures. It translates remote commands into native system calls to interact with the iOS accessibility hierarchy. The server covers a broad range of device orchestration and UI autom

    Objective-C
    在 GitHub 上查看↗4,260
  • mobile-dev-inc/maestromobile-dev-inc 的头像

    mobile-dev-inc/Maestro

    10,788在 GitHub 上查看↗

    Maestro is a declarative mobile and web UI automation framework designed for end-to-end testing. It operates by querying the native accessibility tree of an application, allowing for black-box testing without requiring source code instrumentation or platform-specific dependencies. The framework distinguishes itself through a unified command syntax that abstracts interactions across Android, iOS, and web environments. It features a dynamic synchronization engine that automatically pauses test execution to account for non-deterministic animations and network-dependent content loading, ensuring

    Kotlinandroidblackbox-testingios
    在 GitHub 上查看↗10,788
  • angular/protractorangular 的头像

    angular/protractor

    8,694在 GitHub 上查看↗

    Protractor is a WebDriver-based end-to-end testing framework and browser automation tool. It serves as a frontend integration test suite used to verify web application flows by simulating user behavior and executing JavaScript within a browser. The framework is specifically designed for testing Angular applications, providing specialized locators and synchronization tools that align with the framework lifecycle. It distinguishes itself through automatic test step synchronization, which pauses execution until pending page tasks are completed to ensure stable browser execution. The tool covers

    JavaScriptangularend-to-endjavascript
    在 GitHub 上查看↗8,694
查看 EarlGrey 的所有 30 个替代方案→

常见问题解答

google/earlgrey 是做什么的?

EarlGrey is an iOS UI automation test framework that enables writing and running automated tests simulating real user interactions. It provides a synchronized test execution engine that automatically waits for animations, network requests, and run-loop states to complete before performing test actions or assertions, producing stable and repeatable results across test runs.

google/earlgrey 的主要功能有哪些?

google/earlgrey 的主要功能包括:iOS UI Automation Tests, App Internal Queries, Visibility Checkers, Visibility Verifications, Test-to-App Bridges, Test Process Interaction Brokers, Pixel-Level Visibility Matchers, Pixel-Level Visibility Verifications。

google/earlgrey 有哪些开源替代品?

google/earlgrey 的开源替代品包括: kif-framework/kif — KIF is a functional testing framework and UI automation tool for iOS. It enables the simulation of user interactions… facebook/webdriveragent — WebDriverAgent is an on-device control agent and automation server that implements the WebDriver protocol for iOS… mobile-dev-inc/maestro — Maestro is a declarative mobile and web UI automation framework designed for end-to-end testing. It operates by… kentcdodds/react-testing-library — This project is a component testing framework and utility designed for testing React components. It functions as a DOM… angular/protractor — Protractor is a WebDriver-based end-to-end testing framework and browser automation tool. It serves as a frontend… garris/backstopjs — BackstopJS is an automated screenshot testing framework and visual regression testing tool designed to identify…