Repolode
web-infra-dev

web-infra-dev/midscene

Midscene.js é um framework de testes E2E baseado em visão que permite escrever etapas e verificações de UI em linguagem natural para apps web, mobile e desktop.

Estrelas
15,331
Forks
1,201
Issues abertas
123
Último commit
há 4 horas

O que é?

Midscene.js leva visão de IA aos testes ponta a ponta. Os testes descrevem etapas da interface e resultados esperados em linguagem simples, enquanto um agente visual de GUI localiza elementos em screenshots, clica, digita, rola a tela e verifica o que está visível. Assim, é possível interagir com botões que têm apenas ícones, controles personalizados, conteúdo em canvas e iframes de outra origem sem precisar manter seletores CSS ou XPath.

O projeto oferece duas formas de começar. Com o Midscene Test, você escreve casos de teste em YAML e reutiliza nós TypeScript para configuração, chamadas de API e limpeza. Como alternativa, você pode adicionar as APIs do Agent (aiAct, aiTap, aiInput, aiAssert, aiQuery, aiWaitFor) a testes existentes com Playwright ou Puppeteer. Há suporte para navegadores Web, Android via ADB, iOS via WebDriverAgent, HarmonyOS via HDC e sistemas desktop.

A escolha do modelo é flexível: o projeto funciona com vários modelos com recursos de visão, incluindo opções que podem ser hospedadas por conta própria. As execuções de testes geram relatórios HTML interativos com screenshots, localizações dos elementos e resultados das ações e verificações.

Recursos principais

  • 01Escreve ações e verificações de UI em linguagem natural, incluindo checagens de cores, layout e feedback visual.
  • 02Localiza elementos em screenshots, sem precisar de seletores para botões com ícones ou conteúdo em canvas.
  • 03Oferece suporte a casos de teste em YAML com o Midscene Test e nós TypeScript reutilizáveis.
  • 04Integra-se ao Playwright e ao Puppeteer por meio da API do Agent.
  • 05Atende às plataformas Web, Android, iOS, HarmonyOS e desktop.
  • 06Gera relatórios HTML interativos com screenshots e resultados da execução.

Casos de uso

  • Escrever testes ponta a ponta para apps web em que os seletores são frágeis ou não estão disponíveis.
  • Testar interfaces baseadas em canvas ou renderizadas visualmente, que não podem ser inspecionadas com verificações do DOM.
  • Adicionar verificações visuais a uma suíte de testes existente com Playwright ou Puppeteer.
  • Automatizar fluxos de apps mobile em dispositivos e emuladores Android ou iOS.

Início rápido

  1. 1

    Instale o pacote Web SDK pelo npm

  2. 2

    Crie um projeto Midscene Test (consulte o guia para ver o comando exato de configuração)

  3. 3

    Configure um modelo e o runtime Web, depois escreva casos de teste em YAML e execute-os

Antes de usar

  • É necessário ter acesso a um modelo de IA com capacidade de visão, que você precisará configurar e pelo qual terá de pagar.
  • Os resultados de benchmark divulgados dependem de modelos e configurações de execução específicos.

Tópicos

Perguntas frequentes

O que é midscene?
Midscene.js é um framework de testes E2E baseado em visão que permite escrever etapas e verificações de UI em linguagem natural para apps web, mobile e desktop. Midscene.js leva visão de IA aos testes ponta a ponta. Os testes descrevem etapas da interface e resultados esperados em linguagem simples, enquanto um agente visual de GUI localiza elementos em screenshots, clica, digita, rola a tela e verifica o que está visível. Assim, é possível interagir com botões que têm apenas ícones, controles personalizados, conteúdo em canvas e iframes de outra origem sem precisar manter seletores CSS ou XPath.
midscene é gratuito? Qual é a licença?
midscene é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
midscene ainda é mantido?
Manutenção ativa. O último commit de midscene foi em 20 de out. de 2026.
Para que posso usar midscene?
Escrever testes ponta a ponta para apps web em que os seletores são frágeis ou não estão disponíveis. Testar interfaces baseadas em canvas ou renderizadas visualmente, que não podem ser inspecionadas com verificações do DOM. Adicionar verificações visuais a uma suíte de testes existente com Playwright ou Puppeteer. Automatizar fluxos de apps mobile em dispositivos e emuladores Android ou iOS.
Como instalar midscene?
Instale o pacote Web SDK pelo npm Crie um projeto Midscene Test (consulte o guia para ver o comando exato de configuração) Configure um modelo e o runtime Web, depois escreva casos de teste em YAML e execute-os
Onde consigo midscene?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/web-infra-dev/midscene

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados