Existe alguém que implemente com sucesso o regime de automação de teste da interface do usuário usando a Microsoft UI Automation?

StackOverflow https://stackoverflow.com/questions/1249041

  •  12-09-2019
  •  | 
  •  

Pergunta

Estou procurando uma estrutura de teste de interface do usuário automatizada/ ferramenta de software. No passado, eu tenho usado TestComplete, e embora seja um bom software, mas o conceito de automação de teste de GUI foi considerado suficientemente difícil para que eu escrevi Algumas postagens para reclamar sobre isso.

Um dos problemas com a ferramenta de automação de testes de terceiros é que você precisa aprender um novo idioma para ser produtivo, sem mencionar que o suporte a ferramentas é ruim. Agora estou planejando analisar Automação da UI da Microsoft Isso vem com .NET 3.0 e o Estrutura branca. Mas antes de fazer isso, quero saber qual é o resultado lá.

Alguém tem alguma experiência para compartilhar isso? Você criou um conjunto de testes sustentável e bem -sucedido usando a automação da interface do usuário em seu aplicativo?

EDIT: Isso parece uma pergunta muito difícil. Eu configuraria recompensa para isso se não receber respostas nesses poucos dias.

Foi útil?

Solução 6

Resposta a frio ... melhor eu respondo uma resposta fictícia, apenas para o caso de não haver uma boa resposta para isso.

Outras dicas

Esta é uma resposta extremamente tardia (você provavelmente já foi enviado), mas eu testei um aplicativo WPF com ele.

Eu tinha muita descamação enquanto usava a versão beta1 do VS2010 e encontrei alguns bugs. Usando a versão de lançamento, tive menos problemas.

Foi um desafio porque eu estava aprendendo WPF, VS Automação da UI e acessibilidade WPF/Windows, tudo ao mesmo tempo. O fato de ser difícil criar testes automatizados da UI à prova de balas adicionados a essa dificuldade.

Após o VS2010 RTM, ainda tinha problemas intermitentes com uma página nativa/personalizada que embrulhamos. Eu acho que isso ocorreu parcialmente devido a um problema parental e parcialmente devido a um problema de encadeamento/processo.

A maior dor de cabeça que encontrei foi quando eu estava tentando testar contra algum controle que usamos no WPF Toolkit, em particular o controle DataGrid. Tinha alguns bugs conhecidos de automação da interface do usuário, e eu tinha um tempo de diabo trabalhando em torno deles.

Também encontrei alguns desafios em que a estrutura de automação da interface do usuário estava em cache de dados nos bastidores. Eu teria que reinstalar os controles para obter dados atualizados sobre eles (particularmente a visibilidade, quando um controle era mal parental).

Se eu tivesse um aplicativo WPF puro ou Win32 puro, isso não herdou a interface do usuário de outros aplicativos, envolva as coisas nos controles do Webbrowser, usava controles personalizados, etc., provavelmente o usaria novamente. Se você ainda não tomou uma decisão e seu aplicativo usa nenhum deles, veria se eu poderia usar outra coisa. Talvez um conjunto mais simples de scripts para fazer testes de integração mais limitados e tente cobrir o restante com testes de unidade, usando objetos simulados.

No entanto, não o usei nos últimos 6 meses, então sua milhagem pode variar.

Usamos a estrutura de teste branco aqui com ótimos resultados.

A estrutura usa mensagens Win32 para encontrar os controles e interagir com eles. No entanto, é bastante lento em grandes formas com muitos controles, essa é a única desvantagem que encontrei. Automatizamos o teste em execução usando o Buildbot e o Funit-Console também.

Eu escrevi uma jóia baseada em IronRuby chamada Bewildr Isso envolve a estrutura de automação da UI do MS. Foi usado com sucesso para automatizar aplicativos MS WPF em várias empresas, incluindo a BBC. Aqui está um guia passo a passo para usá-lo: http://www.natontesting.com/2011/08/27/step-by-tep-example-of-bdding-a-wpf-app-pith-cucumber-rspec-onruby-and-bewildr/

Eu tenho usado a estrutura de automação da UI MS usando C#.NET e achei isso extremamente simples e útil. Não foram observados problemas como tal, mas não possui relatório de geração de suporte para que você precise escrever sua própria lógica para isso com base no seu caso de teste específico.

Satisfação geral: 8/10.

Não tenho experiência com a Microsoft UI Automation, mas estou usando o Autoit (http://www.autoitscript.com/autoit3/) fazer um pouco de automação da GUI. Estou usando para testar meu suplemento do Visual Studio. Não é realmente uma resposta para sua pergunta, mas pode ser interessante para você.

Cumprimentos,

Sebastiaan

Eu usei uma versão leve do teste automatizado da interface do usuário para a estrutura .NET usando uma abordagem semelhante a esta:

http://msdn.microsoft.com/en-us/magazine/cc163864.aspx

Eu encontrei problemas usando guias e decidindo quais painéis seriam usados, mas isso acabou levando a um redesenho do formulário (por isso também encontrou problemas no design também!)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top