{"id":26228849,"url":"https://github.com/qajonatasmartins/qa.base-example-web-test.webdriverio","last_synced_at":"2025-10-07T15:52:27.612Z","repository":{"id":38134253,"uuid":"488028090","full_name":"qajonatasmartins/qa.base-example-web-test.WEBDRIVERIO","owner":"qajonatasmartins","description":"Projeto base com exemplos para testes automatizados web com o webdriverio","archived":false,"fork":false,"pushed_at":"2022-11-21T23:52:51.000Z","size":2126,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-07T04:41:41.726Z","etag":null,"topics":["automation-testing","testing","web-testing","webdriverio"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/qajonatasmartins.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-05-03T00:09:15.000Z","updated_at":"2023-07-09T22:36:06.000Z","dependencies_parsed_at":"2022-09-18T01:30:20.594Z","dependency_job_id":null,"html_url":"https://github.com/qajonatasmartins/qa.base-example-web-test.WEBDRIVERIO","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/qajonatasmartins/qa.base-example-web-test.WEBDRIVERIO","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qajonatasmartins%2Fqa.base-example-web-test.WEBDRIVERIO","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qajonatasmartins%2Fqa.base-example-web-test.WEBDRIVERIO/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qajonatasmartins%2Fqa.base-example-web-test.WEBDRIVERIO/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qajonatasmartins%2Fqa.base-example-web-test.WEBDRIVERIO/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/qajonatasmartins","download_url":"https://codeload.github.com/qajonatasmartins/qa.base-example-web-test.WEBDRIVERIO/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qajonatasmartins%2Fqa.base-example-web-test.WEBDRIVERIO/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278802800,"owners_count":26048566,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-07T02:00:06.786Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation-testing","testing","web-testing","webdriverio"],"created_at":"2025-03-12T21:31:06.981Z","updated_at":"2025-10-07T15:52:27.592Z","avatar_url":"https://github.com/qajonatasmartins.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 4alltesters_webdriverIO_23062022\n\n![Pipeline](https://github.com/qajonatasmartins/qa.base-example-web-test.WEBDRIVERIO/actions/workflows/tests.yml/badge.svg)\n\n**E ai QA, Bugou?**\n\n\u003e\u003e Aqui quem fala é o @qajonatasmartins e esse projeto é para ensinar a como criar um projeto base de automação de testes com o WebdriverIO, segue abaixo o tutorial para criar do zero o projeto.\n\n## Pré-requisitos\n\nVocê precisará de Node.js instalado.\n\nInstale pelo menos v12.16.1 ou superior, pois esta é a versão LTS ativa mais antiga\n\n## Como criar um projeto do zero com WebdriverIO\n\n1. Passo: Crie uma pasta para criar o projeto do zero com WebdriverIO\n2. Passo: Abra o terminal e no diretório criado\n3. Passo: Execute o comando `npm init wdio .`\n4. Passo: Após o 'WDIO CLI Wizard...' do WebdriverIO ser iniciado, o wizard de configurações faz uma serie de perguntas para você criar o projeto.\n   1. \u003e\u003e Where is your automation backend located? (Onde está localizado seu back-end de automação?)\n      1. [x] **On my local machine (Na minha máquina local)**\n      2. [ ] In the cloud using Experitest (Na nuvem usando o Experitest)\n      3. [ ] In the cloud using Sauce Labs (Na nuvem usando o Sauce Labs)\n      4. [ ] In the cloud using Browserstack or Testingbot or LambdaTest or a different service (Na nuvem usando Browserstack ou Testingbot ou LambdaTest ou um serviço diferente)\n      5. [ ] I have my own Selenium cloud (Eu tenho minha própria nuvem de Selenium)\n   2. \u003e\u003e Which framework do you want to use? (Qual framework você quer usar?)\n      1. [x] **mocha**\n      2. [ ] jasmine\n      3. [ ] cucumber\n   3. \u003e\u003e Do you want to use a compiler? (Você quer usar um compilador?)\n       1. [x] **Babel (https://babeljs.io/)**\n       2. [ ] TypeScript (https://www.typescriptlang.org/)\n       3. [ ] No!\n   4. \u003e\u003e Where are your test specs located? (Onde estão localizadas suas especificações de teste?)\n      1. **Clique [ENTER]**\n   5. \u003e\u003e Do you want WebdriverIO to autogenerate some test files? (Deseja que o WebdriverIO gere automaticamente alguns arquivos de teste?)\n      1. **Informe a letra \"Y\" e clique [ENTER]**\n   6. \u003e\u003e Do you want to use page objects? (Deseja usar objetos de página?)\n      1. **Informe a letra 'Y' e clique [ENTER]**\n   7. \u003e\u003e Where are your page objects located? (Onde estão localizados seus objetos de página?)\n      1. **Clique [ENTER]**\n   8. \u003e\u003e Which reporter do you want to use? (Press [space] to select, [a] to toggle all, [i] to invert selection, and [enter] to proceed (Qual repórter você quer usar? (Pressione [espaço] para selecionar, [a] para alternar tudo, [i] para inverter a seleção e [enter] para continuar))\n      1. **Clique [ENTER]**\n   9. \u003e\u003e Do you want to add a plugin to your test setup? (Press [space] to select, [a] to toggle all, [i] to invert selection, and [enter] to proceed) (Deseja adicionar um plug-in à sua configuração de teste? (Pressione [espaço] para selecionar, [a] para alternar tudo, [i] para inverter a seleção e [enter] para continuar))\n      1. **Clique [ENTER]**\n   10. Do you want to add a service to your test setup? (Press [space] to select, [a] to toggle all, [i] to invert selection, and [enter] to proceed) (Deseja adicionar um serviço à sua configuração de teste? (Pressione [espaço] para selecionar, [a] para alternar tudo, [i] para inverter a seleção e [enter] para continuar))\n       1. **Clique [ENTER]**\n   11. \u003e\u003e What is the base url? (http://localhost) (Qual é o URL básico? (http://localhost))\n       1. **Clique [ENTER]**\n   12. \u003e\u003e Do you want me to run `npm install` (Y/n) (Você quer que eu execute `npm install` (S/n))\n       1. **Informe a letra \"Y\"**\n   13. Execute no terminal o seu teste base criado pelo WebdriverIO com o comando `npm run wdio`\n\n# **Intalação das dependências do projeto**\n\nnpm install\n\n# **Frameworks**\n\n- **webdriverIO**: Framework utilizado para realizar as automações mobile e web utilizando a linguagem Java Script;\n\n# **Libs**\n\n- **superagent**: O Superagent é uma lib para prover as integrações com API;\n- **moment**: Moment é lib para prover manipulações de datas/horas;\n- **pg**: Pg é uma lib para prover conexão com banco de dados postgres;\n- **eslit**: ESLint é uma ferramenta de análise de código estática para identificar padrões problemáticos encontrados no código JavaScript;\n- **allure**: O Allure é uma lib para prover relatórios de execução de testes.\n\n# **Padrão dos nomes de Branchs**\n\n## Nova funcionalidade\n\nfeature/Ticket\n\n**Exemplo:** feature/TS-0000\n\n## Bug\n\nfix/Ticket\n\n**Exemplo:** fix/TS-0000\n\n## **Padrão de commit**\n\n**Sumary:** Título breve da modificação\n**Autor:** Seu Nome\n**Data:** DIA/MES/ANO\n**Ticket:** Número do Ticket (TS-XXXX)\n**Descrição:** O que foi alterado no commit\n\n## **Padrão de nomenclatura de elementos e métodos**\n\n### Padrão de nomenclatura de elementos\n\n- **Botão**: btn + nomeElemento\n- **Campos**: inp + nomeElemento\n- **Titúlos, nomes de campos e etc**: lbl + nomeElemento\n- **link**: lnk + nomeElemento\n- **Abas**: tab + nomeElemento\n- **Combobox/Dropdownlist**: ddl + nomeElemento\n- **Checkbox**: check + nomeElemento\n\n### Padrão de nomenclatura de métodos\n\nação + nomeElemento\n\n**Exemplo**: clickBtnEnter()\n\n## Para rodar esse projeto\n\n### Comando para executar em modo device\n\nENV=STAGING npm run local_device_chrome_android\n\nENV=STAGING npm run local_device_chrome_android_login\n\nENV=STAGING npm run local_device_chrome_ios\n\nENV=STAGING npm run local_device_chrome_ios_login\n\n### Comando para executar no navegador\n\nENV=STAGING npm run local_chrome\n\nENV=STAGING npm run local_chrome_login\n\nENV=STAGING npm run local_chrome_login\n\nENV=STAGING npm run local_edge\n\nENV=STAGING npm run local_edge_login\n\nENV=STAGING npm run local_firefox\n\nENV=STAGING npm run local_firefox_login\n\nENV=STAGING npm run local_parallel\n\nENV=STAGING npm run local_parallel_login\n\n### Comando para executar no navegador do browserstack\n\nENV=STAGING npm run browserstack_chrome\n\nENV=STAGING npm run browserstack_chrome_login\n\nENV=STAGING npm run browserstack_edge\n\nENV=STAGING npm run browserstack_edge_login\n\nENV=STAGING npm run browserstack_firefox\n\nENV=STAGING npm run browserstack_firefox_login\n\nENV=STAGING npm run browserstack_parallel\n\nENV=STAGING npm run allure_browserstack_parallel\n\n## Executando o relatório\n\nnpm run allure_local_chrome\n\nnpm run allure_local_edge\n\nnpm run allure_local_firefox\n\nnpm run allure_local_parallel\n\nnpm run allure_local_device_chrome_android\n\nnpm run allure_local_device_chrome_ios\n\nnpm run allure_browserstack_chrome\n\nnpm run allure_browserstack_firefox\n\nnpm run allure_browserstack_parallel\n\n## Executar o mode debug REPL\n\nnpm run repl\n\n## Me siga nas redes sociais para mais conteúdos de tecnologia\n\n\u003e @QAJONATASMARTINS\n\u003e - Youtube: https://bit.ly/31SumOs\n\u003e - TikTok: https://www.tiktok.com/@qajonatasmartins\n\u003e - Linkedin: https://www.linkedin.com/in/jonatasmfaria/\n\u003e - Instagram: https://www.instagram.com/qajonatasmartins/","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqajonatasmartins%2Fqa.base-example-web-test.webdriverio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fqajonatasmartins%2Fqa.base-example-web-test.webdriverio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqajonatasmartins%2Fqa.base-example-web-test.webdriverio/lists"}