MaaXYZ/MaaFramework

基于图像识别的自动化黑盒测试框架 | An automation black-box testing framework based on image recognition

MaaFramework란?

MaaFramework는 이미지 인식을 기반으로 한 오픈소스 자동화 및 블랙박스 테스트 프레임워크입니다. 개발자는 화면을 감시하고 컴퓨터 비전으로 UI 요소를 인식한 다음 마우스/키보드(또는 터치) 동작을 시뮬레이션하는 로우코드 "파이프라인"을 작성할 수 있습니다. 코어 라이브러리는 최신 C++20으로 작성되었으며 다양한 언어(Python, C#, Node, Go, Rust 등)와 플랫폼(Windows, Linux, macOS, Android)용으로 제공됩니다.


왜 중요한가

  • 이미지 기반 UI 자동화 – 내부 후크나 접근성 API가 필요 없이 스크린샷 매칭으로 모든 그래픽 프로그램(게임, 앱, 웹 페이지)을 제어할 수 있습니다.
  • 로우코드, 높은 확장성 – 파이프라인은 간단한 선언적 형식으로 기술되지만 사용자 정의 인식기, 컨트롤러, 데이터 소스를 플러그인할 수 있습니다.
  • 다국어 바인딩 – 동일한 엔진을 Python, .NET, JavaScript/Node, Go, Rust 등에서 사용할 수 있어 기존 테스트 스위트에 통합하기 쉽습니다.
  • 생태계 – 코어를 둘러싼 커뮤니티 도구(GUI, 디버거, 로그 분석기, CLI 헬퍼, 스킬 라이브러리)가 성장하고 있어 처음부터 시작하지 않고도 완전한 기능을 갖춘 봇이나 테스트 장비를 구축할 수 있습니다.

핵심 개념(README에 설명됨)

개념 설명 사용 방법
파이프라인 이미지 매칭 단계, 판단 로직, 시뮬레이션 입력을 연결하는 로우코드 "레시피". 시퀀스를 설명하는 YAML/JSON 파일을 작성하면 프레임워크가 자동으로 실행합니다.
프로젝트 인터페이스(PI) v2 전체 자동화 프로젝트(리소스, 파이프라인, 구성)를 패키징하는 프로토콜. PI 패키지를 내보내거나 가져와 봇/테스트 스위트를 공유하거나 버전 관리합니다.
바인딩 언어별 래퍼(Python maafw, .NET Maa.Framework.Runtimes, Node @maaxyz/maa-node 등). pip, NuGet, npm, cargo 또는 go 모듈로 설치하고 선호하는 언어에서 동일한 C++ 코어를 호출합니다.
커뮤니티 도구 GUI(MFAAvalonia, MFW‑CFA, MXU, MWU), 디버거(MaaDebugger), 로그 분석기(MaaLogAnalyzer, MaaLogs), CLI 유틸리티(maafw‑cli, MaaCtl), AI 에이전트용 스킬 라이브러리. 워크플로에 맞는 도구를 선택하세요(예: MaaDebugger로 파이프라인 단계별 실행, MaaLogAnalyzer로 실행 추적 시각화).

시작하기(README의 빠른 시작 단계)

  1. 웹사이트 방문 – https://maafw.com/ 에서 더 풍부한 문서를 확인하세요.
  2. 빠른 시작 가이드 읽기 – docs/zh_cn/1.1-快速开始.md 에서 필요한 언어 바인딩 설치와 샘플 파이프라인 실행 방법을 설명합니다.
  3. 라이브러리 통합 – 언어별 통합 문서(2.1-集成文档.md)를 따라 API 목록(2.2-集成接口一览.md)을 살펴보세요.
  4. 파이프라인 작성 – "파이프라인 로우코드 프로토콜"(3.1-任务流水线协议.md)을 사용하여 봇이 수행할 단계를 설명하세요.
  5. 커뮤니티 확장 살펴보기 – UI 프런트엔드, 디버거, 스킬 팩은 社区项目 아래에 나열됩니다.

MaaFramework는 누가 사용할까?

대상 일반적인 사용 사례
게임 자동화 개발자 화면 스크래핑과 시뮬레이션 탭에 의존하는 모바일/PC 게임용 봇(예: 명일방주용 "M9A", 음양사용 "MaaYYs") 구축.
QA 엔지니어 소스 코드나 접근성 후크가 없는 애플리케이션에 대한 블랙박스 UI 테스트 생성.
AI 에이전트 연구자 시각적 인식과 행동이 필요한 에이전트의 "환경"으로 프레임워크 사용(예: maafw-cli 또는 MaaEvidenceKit 통해).
도구 개발자 MaaFramework 파이프라인을 오케스트레이션하는 사용자 정의 GUI, 디버거, CI 파이프라인 개발.

더 많은 정보

  • 소스 코드 – https://github.com/MaaXYZ/MaaFramework
  • 패키지 저장소 – PyPI (maafw), NuGet, npm (@maaxyz/maa-node), Go (maa-framework-go), crates.io (maa-framework).
  • 커뮤니티 허브 – https://hub.maafw.com 에서 파이프라인, 스킬, 모듈 공유.
  • 문서 – 영어(README_en.md) 및 중국어(README.md) 버전과 웹사이트.

TL;DR

MaaFramework는 컴퓨터 비전을 사용하여 UI 상호 작용을 구동하는 C++ 기반의 크로스 플랫폼 자동화 엔진입니다. 로우코드 파이프라인 언어, 다양한 언어 바인딩, 활발한 GUI, 디버거, CLI 도구 생태계를 제공하여 게임 봇, UI 테스트, AI 에이전트 환경에 적합합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트