Buscar categorias, pacotes e repositórios

Detalhes do pacotev3.2.0

webdriver

Fornece vinculações do WebDriver para o Dart. Suporta a interface JSON do WebDriver e a especificação W3C. Requer o uso de um servidor remoto do WebDriver.

Downloads em 30 dias
11,4 mi
Curtidas
67
Pontos Pub
130

Instalar pacote

flutter pub add webdriver

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

O pacote webdriver fornece vinculações do WebDriver para Dart, permitindo testes automatizados de navegadores por meio da interface JSON do WebDriver e dos padrões W3C. Ele exige um servidor remoto do WebDriver separado para funcionar, permitindo que aplicativos Dart controlem navegadores programaticamente. Esse pacote é ideal para escrever testes de ponta a ponta que simulam interações reais de usuários em diferentes navegadores e plataformas. Ele suporta fluxos modernos de teste web e se integra bem com frameworks de teste como test ou integration_test.

Casos de uso

  • Testes de navegador automatizados
  • Testes de ponta a ponta de aplicações web
  • Teste de compatibilidade entre navegadores
  • Testes de integração com navegadores reais
  • Automação de testes em pipelines CI/CD

Principais recursos

  • Suporta especificações WebDriver JSON e W3C
  • Requer servidor externo do WebDriver
  • Habilita automação de navegador por meio do Dart
  • Facilita a simulação de interação real do usuário
  • Integra-se com frameworks de teste do Dart

Indicado para

  • Desenvolvedores Dart fazendo testes web
  • Equipes usando pipelines de CI/CD
  • Engenheiros de teste automatizando fluxos de trabalho do navegador
  • Projetos que exigem validação entre navegadores
  • Desenvolvedores que seguem os padrões W3C WebDriver

Considerações

  • Requer um servidor WebDriver em execução (por exemplo, Selenium Server)
  • Não adequado para cenários apenas sem cabeça sem configuração
  • Limitado à automação de navegadores, não para testes de interface móvel ou nativa
  • Dependente da estabilidade do servidor externo
  • Pode exigir configuração adicional para ambientes seguros

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

CI pub package package publisher

Provides WebDriver bindings for Dart. These use the WebDriver JSON interface, and as such, require the use of the WebDriver remote server.

Using package:webdriver

In your Dart code, you can use:

import 'package:webdriver/io.dart';

WebDriver driver = createDriver(...);

This will use by default the asynchronous, JSON wire spec implementation. You now can also use a synchronous version of WebDriver:

import 'package:webdriver/sync_io.dart';

final driver = createDriver(...);

This version of WebDriver supports both the JSON wire spec and W3C spec, allowing use with modern versions of Firefox. This defaults to the JSON wire spec, but can also be configured to use the W3C spec or even to try and automatically infer the spec during session creation:

final w3cDriver = createDriver(spec: WebDriverSpec.W3c);  // Use W3C spec.

final anyDriver = createDriver(spec: WebDriverSpec.Auto); // Infer spec.

Testing

Unfortunately using bazel with Dart libraries and Dart WebDriver is not yet supported. We hope to add this at some point, but for now pub still works.

As a consequence, running tests is a bit more complicated than we'd like:

  1. Launch a WebDriver binar(ies).

    First, bring up chromedriver / geckodriver. Other conforming WebDriver binaries should work as well, but we test against these:

    chromedriver --port=4444 --url-base=wd/hub --verbose
    geckodriver --port=4445
    

    ChromeDriver is used to test our JSON wire spec implementation, and geckodriver is used to test our W3C spec implementation.

    Synchronous tests are labeled as Chrome/Firefox. All async tests run exclusively against Chrome (as async, like ChromeDriver supports only the old JSON wire spec).

  2. Run a test. All files suffixed with _test.dart are tests.

    dart test test/path/to/the_test.dart -r expanded -p vm
    

    Or to run all tests:

    dart test -r expanded -p vm
    

    You should probably go get a coffee or something, this is gonna take a while.

Categorias

Dependências

Lista de dependências 5 itens

Repositório-fonte

Projetos que usam este pacote