{"id":300494,"date":"2022-11-25T19:12:14","date_gmt":"2022-11-25T18:12:14","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=qa&#038;p=300494"},"modified":"2023-01-17T16:35:04","modified_gmt":"2023-01-17T15:35:04","slug":"apresentando-o-aqua-um-poderoso-ide-para-automacao-de-testes-da-jetbrains","status":"publish","type":"qa","link":"https:\/\/blog.jetbrains.com\/pt-br\/qa\/2022\/11\/apresentando-o-aqua-um-poderoso-ide-para-automacao-de-testes-da-jetbrains\/","title":{"rendered":"Apresentando o Aqua &#8211; um poderoso IDE para automa\u00e7\u00e3o de testes da JetBrains"},"content":{"rendered":"<p>Controle de qualidade e engenharia de teste s\u00e3o partes essenciais do desenvolvimento moderno de softwares. Na JetBrains, acreditamos que usar a ferramenta certa \u00e9 importante para cada tipo de trabalho. Criar uma ferramenta separada para o desenvolvimento automatizado de testes foi uma etapa natural para n\u00f3s, pois nos permite atender \u00e0s necessidades de equipes multifuncionais de desenvolvimento de software.&nbsp;<\/p>\n<p>\u00c9 com grande satisfa\u00e7\u00e3o que apresentamos o JetBrains Aqua, um novo e poderoso IDE para automa\u00e7\u00e3o de testes. O Aqua fornece um conjunto de recursos exclusivo e diferente dos produtos da JetBrains existentes. No Aqua, reunimos tudo o que um engenheiro de automa\u00e7\u00e3o de testes precisa ter diariamente, incluindo um IDE multilinguagem (com suporte para JVM, Python, JavaScript e outras linguagens), um cliente HTTP, funcionalidade de gerenciamento de banco de dados, suporte para Docker, um cliente TMS e um novo e poderoso inspetor web para automa\u00e7\u00e3o da interface do usu\u00e1rio.&nbsp;<\/p>\n<p>Estamos lan\u00e7ando uma pr\u00e9via p\u00fablica do JetBrains Aqua, para que todos possam experiment\u00e1-lo e influenciar o design. Voc\u00ea poder\u00e1 saber mais sobre essa pr\u00e9via no final do post.<\/p>\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\">\n<div class=\"wp-block-embed__wrapper\">&nbsp;<\/div>\n<\/figure>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n<p>O JetBrains Aqua \u00e9 um IDE inteligente e sens\u00edvel ao contexto que compreende Java, Kotlin, Python, JavaScript, TypeScript e SQL e que fornece assist\u00eancia de codifica\u00e7\u00e3o inteligente para cada uma dessas linguagens.<\/p>\n<p>Como os outros IDEs da JetBrains, o Aqua verifica a qualidade e a validade do seu c\u00f3digo com inspe\u00e7\u00f5es em tempo real. Se forem encontrados problemas, o IDE sugerir\u00e1 a\u00e7\u00f5es de contexto para ajudar voc\u00ea a resolv\u00ea-los. Clique no \u00edcone de l\u00e2mpada (ou pressione <em>Alt+Enter<\/em>) para invocar uma a\u00e7\u00e3o de contexto. Aproveite a complementa\u00e7\u00e3o de c\u00f3digo com reconhecimento de linguagem, detec\u00e7\u00e3o de erros e corre\u00e7\u00f5es de c\u00f3digo em tempo real!<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-293975\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/11\/image-10.png\" alt=\"\" width=\"1400\" height=\"600\"><\/figure>\n<p>Use a pesquisa inteligente para acessar qualquer classe, arquivo, s\u00edmbolo, a\u00e7\u00e3o do IDE ou janela de ferramentas. Para us\u00e1-la, pressione <em>Shift <\/em>duas vezes e comece a digitar o nome do que voc\u00ea est\u00e1 procurando.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-293986\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/11\/image-11.png\" alt=\"\" width=\"1400\" height=\"600\"><\/figure>\n<p>Aproveite ao m\u00e1ximo a intelig\u00eancia de c\u00f3digo do IDE com as seguras refatora\u00e7\u00f5es <em>Rename <\/em>e <em>Delete<\/em>, <em>Extract Method<\/em>, <em>Introduce Variable<\/em>, <em>Inline Variable<\/em> ou <em>Method<\/em>, entre outras. Refatora\u00e7\u00f5es espec\u00edficas de cada linguagem e framework ajudam voc\u00ea a fazer altera\u00e7\u00f5es em todo o projeto.<\/p>\n<h2>Frameworks de testes de unidade<\/h2>\n<p>Crie e execute seus testes com assist\u00eancia de codifica\u00e7\u00e3o e um executor de testes baseado em GUI. Com o JetBrains Aqua, voc\u00ea pode escrever, executar e depurar seus testes de unidades usando JUnit, TestNG, Pytest, Jest, Mocha e outros frameworks populares. A revis\u00e3o dos resultados dos testes dentro do IDE permite que voc\u00ea navegue facilmente por uma representa\u00e7\u00e3o visual em \u00e1rvore at\u00e9 a origem do teste.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-293997\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/11\/image-12.png\" alt=\"\" width=\"1400\" height=\"596\"><\/figure>\n<h2>Automa\u00e7\u00e3o da UI<\/h2>\n<h3>Assistente para novo projeto<\/h3>\n<p>O Aqua pode gerar um novo projeto de teste de UI para a pilha JVM, permitindo que voc\u00ea especifique o JDK, a ferramenta de build (Maven ou Gradle), o executor de testes (JUnit ou TestNG) e a linguagem no assistente para cria\u00e7\u00e3o de novo projeto.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-294008\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/11\/image-13.png\" alt=\"\" width=\"1400\" height=\"948\"><\/figure>\n<h3>Insight de c\u00f3digo&nbsp;<\/h3>\n<p>O Aqua fornece suporte avan\u00e7ado para a API Selenium e o Selenide, oferecendo um insight de c\u00f3digo para os fragmentos CSS, XPath e JavaScript usados na API Selenium e em muitas outras bibliotecas para testes de UI.&nbsp;<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-294019\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/11\/image-14.png\" alt=\"\" width=\"1400\" height=\"400\"><\/figure>\n<h3>Modelos de objeto de p\u00e1gina<\/h3>\n<p>Ao seguir o padr\u00e3o de objeto de p\u00e1gina, o IDE ajuda voc\u00ea a criar e manter novos arquivos de objeto de p\u00e1gina no menu <em>New File<\/em> e respeita o padr\u00e3o de objeto de p\u00e1gina selecionado ao adicionar localizadores.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-294030\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/11\/image-15.png\" alt=\"\" width=\"1400\" height=\"600\"><\/figure>\n<h2>Web Inspector<\/h2>\n<p>O Web Inspector incorporado permite visualizar aplica\u00e7\u00f5es Web no Aqua e capturar elementos de p\u00e1gina necess\u00e1rios para testes automatizados. O Aqua gera um localizador CSS ou XPath exclusivo para o elemento selecionado na p\u00e1gina Web e ajuda a adicion\u00e1-lo ao c\u00f3digo-fonte. Se houver mais de um localizador que identifique exclusivamente o mesmo elemento, o Web Inspector sugerir\u00e1 todas as possibilidades.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-294041\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/11\/image-16.png\" alt=\"\" width=\"1270\" height=\"1600\"><\/figure>\n<p>Durante a manuten\u00e7\u00e3o dos testes, o Aqua ajuda voc\u00ea a verificar os localizadores existentes. Basta validar seu seletor CSS ou XPath com o Web Inspector e verificar se o localizador identificou o elemento desejado.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-294052\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/11\/image-17.png\" alt=\"\" width=\"1402\" height=\"814\"><\/figure>\n<p>Quando o Web Inspector est\u00e1 ativo, a complementa\u00e7\u00e3o de c\u00f3digo CSS e XPath sugere e real\u00e7a localizadores para os elementos mais importantes da p\u00e1gina Web.&nbsp;<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-294063\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/11\/image-18.png\" alt=\"\" width=\"1400\" height=\"1400\"><\/figure>\n<p>O Web Inspector tamb\u00e9m pode ser desacoplado em uma janela separada para proporcionar uma melhor experi\u00eancia em telas grandes.<\/p>\n<h2>Testes de API e configura\u00e7\u00e3o do ambiente<\/h2>\n<h3>Cliente HTTP<\/h3>\n<p>Ao desenvolver um servi\u00e7o Web que envia e recebe solicita\u00e7\u00f5es HTTP, voc\u00ea pode criar e editar solicita\u00e7\u00f5es facilmente no cliente HTTP integrado do Aqua e receber ampla assist\u00eancia de c\u00f3digo, incluindo complementa\u00e7\u00e3o de c\u00f3digo, realce, refatora\u00e7\u00f5es e muito mais.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-294074\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/11\/image-19.png\" alt=\"\" width=\"1400\" height=\"786\"><\/figure>\n<h3>Docker<\/h3>\n<p>Com o Aqua, voc\u00ea obt\u00e9m acesso aos seus containers do Docker, permitindo que voc\u00ea os execute e os depure, baixe e crie imagens e rode aplica\u00e7\u00f5es multi-container.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-294592\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/11\/Screenshot-2022-11-03-at-16.32.53.png\" alt=\"\" width=\"2524\" height=\"820\"><\/figure>\n<h2>Banco de dados<\/h2>\n<p>O JetBrains Aqua n\u00e3o exige ferramentas extras para preparar os dados da sua aplica\u00e7\u00e3o. Voc\u00ea pode lidar perfeitamente com v\u00e1rios bancos de dados, desenvolver scripts SQL e executar asser\u00e7\u00f5es de dados de baixo n\u00edvel diretamente no IDE. O Aqua fornece conex\u00f5es com bancos de dados ativos, executa consultas, exporta dados e permite gerenciar esquemas em uma interface visual. Isso significa que voc\u00ea pode acessar bancos de dados Oracle, SQL Server, PostgreSQL e MySQL, entre outros, a partir do IDE.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-294630\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/11\/Screenshot-2022-11-03-at-17.33.02.png\" alt=\"\" width=\"2800\" height=\"1200\"><\/figure>\n<h2>TMS&nbsp;<\/h2>\n<p>Testes geralmente cont\u00eam links para rastreadores de issues e sistemas TMS (sistemas de gerenciamento de testes). Para possibilitar sua inclus\u00e3o, os desenvolvedores usam bibliotecas de relat\u00f3rios, como o Allure Framework, ou mecanismos de framework de teste integrados, como o Serenity BDD. Adicionamos suporte para as anota\u00e7\u00f5es dessas bibliotecas, e o IDE permite que voc\u00ea abra issues ou casos de sistemas TMS em um navegador Web simplesmente clicando nos IDs desses issues.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-294642\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/11\/image-6-1.png\" alt=\"\" width=\"1400\" height=\"598\"><\/figure>\n<p>O Aqua pode se conectar a sistemas TMS externos, como o TestRail, tornando os testes mais acess\u00edveis a partir do IDE. Ele oferece suporte \u00e0 navega\u00e7\u00e3o em conjuntos de testes e hierarquias de casos, bem como a navega\u00e7\u00e3o para itens de sistemas TMS. Ele tamb\u00e9m gera testes de unidade para cen\u00e1rios de teste selecionados e ajuda a localizar casos de teste n\u00e3o automatizados ou m\u00e9todos de teste obsoletos.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-294107\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/11\/image-22.png\" alt=\"\" width=\"1400\" height=\"1476\"><\/figure>\n<p>O Aqua tamb\u00e9m oferece suporte para a abordagem experimental \u201cTMS Local\u201d, uma maneira \u00e1gil de armazenar e gerenciar seus dados de teste. O TMS local armazena dados de teste como uma cole\u00e7\u00e3o de arquivos <code><strong>t.md<\/strong><\/code> e <kbd><code><strong>r.md<\/strong><\/code><\/kbd> no projeto. Essa abordagem permite ramifica\u00e7\u00e3o, versionamento, revis\u00e3o e melhor integra\u00e7\u00e3o com testes automatizados.<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n<p>O desenvolvimento de um IDE completo para automa\u00e7\u00e3o de testes \u00e9 uma tarefa significativa. Durante o per\u00edodo de pr\u00e9via, ainda estaremos em desenvolvimento ativo e continuaremos a implementar recursos e melhorias. Portanto, algumas coisas podem ainda n\u00e3o funcionar como esperado. Ajude-nos a melhorar o produto compartilhando suas ideias sobre quaisquer recursos ou funcionalidades ausentes do JetBrains Aqua. Vamos desenvolver juntos o melhor IDE de automa\u00e7\u00e3o de testes!<\/p>\n<p>Voc\u00ea pode baixar a vers\u00e3o pr\u00e9via mais recente no <a href=\"https:\/\/www.jetbrains.com\/toolbox-app\/\" target=\"_blank\" rel=\"noreferrer noopener\">Toolbox App <\/a>ou em <a href=\"https:\/\/jb.gg\/Aqua\" target=\"_blank\" rel=\"noreferrer noopener\">nosso site<\/a>.<\/p>\n<p><\/p>\n<p align=\"center\"><a class=\"jb-download-button\" href=\"https:\/\/www.jetbrains.com\/aqua\/download\/\" target=\"_blank\" rel=\"noopener\"><br>Baixar o Aqua<br><\/a><\/p>\n<p><\/p>\n<p>Use este <a href=\"https:\/\/www.jetbrains.com\/feedback\/aqua\/\" target=\"_blank\" rel=\"noreferrer noopener\">formul\u00e1rio de feedback<\/a> para compartilhar feedback ou enviar qualquer pergunta que voc\u00ea possa ter.&nbsp;<\/p>\n<p>Inscreva-se em nosso blog para receber novidades sobre as \u00faltimas melhorias e n\u00e3o deixe de nos acompanhar no <a href=\"https:\/\/twitter.com\/JetBrainsQA\" target=\"_blank\" rel=\"noreferrer noopener\">Twitter<\/a>!<\/p>\n<p><em>Bons testes automatizados!<\/em><em><br><\/em><\/p>\n<p>A equipe do Aqua<\/p>\n<p><em>Artigo original em ingl\u00eas por:<br><\/em><\/p>\n\n    <div class=\"about-author \">\n        <div class=\"about-author__box\">\n            <div class=\"row\">\n                <div class=\"about-author__box-img\">\n                    <img decoding=\"async\" src=\"https:\/\/secure.gravatar.com\/avatar\/?s=200&#038;r=g\" width=\"200\" height=\"200\" alt=\"\" loading=\"lazy\"  class=\"avatar avatar-200 wp-user-avatar wp-user-avatar-200 photo avatar-default\">\n                <\/div>\n                <div class=\"about-author__box-text\">\n                                                        <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n","protected":false},"author":1086,"featured_media":300508,"comment_status":"closed","ping_status":"closed","template":"","categories":[],"tags":[600,208,477,274,207],"cross-post-tag":[6256,6284],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/qa\/300494"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/qa"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/types\/qa"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/users\/1086"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/comments?post=300494"}],"version-history":[{"count":5,"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/qa\/300494\/revisions"}],"predecessor-version":[{"id":313183,"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/qa\/300494\/revisions\/313183"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/media\/300508"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/media?parent=300494"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/categories?post=300494"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/tags?post=300494"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/pt-br\/wp-json\/wp\/v2\/cross-post-tag?post=300494"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}