{"id":20447591,"url":"https://github.com/doamaral/curso-protractor-tat","last_synced_at":"2025-07-10T01:02:59.604Z","repository":{"id":87569568,"uuid":"302139094","full_name":"doamaral/curso-protractor-tat","owner":"doamaral","description":"Test Automation Architecture using JS and Protractor","archived":false,"fork":false,"pushed_at":"2020-10-07T19:27:04.000Z","size":17,"stargazers_count":0,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-05T08:51:26.089Z","etag":null,"topics":["javascript","protractor","protractor-e2e-test","protractor-helper"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/doamaral.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-10-07T19:24:51.000Z","updated_at":"2020-10-07T19:28:29.000Z","dependencies_parsed_at":null,"dependency_job_id":"c1f4db0d-0acf-4885-a454-d056a4dc82d8","html_url":"https://github.com/doamaral/curso-protractor-tat","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/doamaral/curso-protractor-tat","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doamaral%2Fcurso-protractor-tat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doamaral%2Fcurso-protractor-tat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doamaral%2Fcurso-protractor-tat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doamaral%2Fcurso-protractor-tat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/doamaral","download_url":"https://codeload.github.com/doamaral/curso-protractor-tat/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doamaral%2Fcurso-protractor-tat/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264506771,"owners_count":23619063,"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","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":["javascript","protractor","protractor-e2e-test","protractor-helper"],"created_at":"2024-11-15T10:27:57.345Z","updated_at":"2025-07-10T01:02:59.563Z","avatar_url":"https://github.com/doamaral.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# curso-protractor-tat\nProjeto para o curso de Protractor da Escola TAT\n\n## Aula 1\n\nUma nota sobre arquitetura de software\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- Simplicidade\u003cbr\u003e\n    - Organização\u003cbr\u003e\n    - Legibilidade\u003cbr\u003e\n    - Reutilização\u003cbr\u003e\n    - Manutenção\u003cbr\u003e\n    - Evolução\n\u003c/details\u003e\n\n## Aula 2\n\n_Bootstrap_ do projeto de testes _end-to-end_\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- Clone do projeto (git clone git@github.com:wlsf82/curso-protractor-tat.git)\u003cbr\u003e\n    - Inicialização de um projeto Node.js (npm init -y)\u003cbr\u003e\n    - Criação do arquivo .gitignore (.DS_Store, node_modules/)\u003cbr\u003e\n    - Instalação do Protractor, protractor-helper e standardjs (npm install protractor protractor-helper standardjs —save-dev)\u003cbr\u003e\n    - Estrutura de diretórios do projeto de testes e2e (configurations/, page-objects/, page-objects/components/, utils/, specs/)\u003cbr\u003e\n    - Documentação oficial do Protractor (http://protractortest.org)\n\u003c/details\u003e\n\n## Aula 3\n\nArquivos de configuração\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- utils/createConfig.js\u003cbr\u003e\n    - A importância do jasmineNodeOpts.random = true\u003cbr\u003e\n    - configurations/chromeConfig.js\u003cbr\u003e\n    - configurations/firefoxConfig.js\n\u003c/details\u003e\n\n## Aula 4\n\nScripts do arquivo package.json\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- lint\u003cbr\u003e\n    - lint:fix\u003cbr\u003e\n    - package.json (standard.globals)\u003cbr\u003e\n    - pretest\u003cbr\u003e\n    - test\u003cbr\u003e\n    - test:chrome\u003cbr\u003e\n    - test:firefox\n\u003c/details\u003e\n\n## Aula 5\n\nCriando o primeiro teste\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- home.spec.js\u003cbr\u003e\n    - Tipagem dos métodos do protractor-helper\u003cbr\u003e\n    - Documentação oficial do protractor-helper (https://github.com/wlsf82/protractor-helper/blob/master/README.md)\u003cbr\u003e\n    - page-objects/home.js\u003cbr\u003e\n    - components/tags.js\n\u003c/details\u003e\n\n## Aula 6\n\nTestando a página de uma tag aleatória\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- tag.spec.js\u003cbr\u003e\n    - page-objects/tag.js\u003cbr\u003e\n    - components/destinations.js\u003cbr\u003e\n    - utils/randomNumberBewtweenOneAndN.js\n\u003c/details\u003e\n\n## Aula 7\n\nTestando a página de uma destination aleatória\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- destination.spec.js\u003cbr\u003e\n    - page-objects/destination.js\u003cbr\u003e\n    - components/destination.js\u003cbr\u003e\n    - utils/randomNumberBewtweenOneAndN.js\n\u003c/details\u003e\n\n## Aula 8\n\nTestando o básico da página de edição de uma destination aleatória\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- editDestination.spec.js\u003cbr\u003e\n    - page-objects/editDestination.js\u003cbr\u003e\n    - components/destination.js\u003cbr\u003e\n    - components/form.js\u003cbr\u003e\n    - utils/randomNumberBewtweenOneAndN.js\n\u003c/details\u003e\n\n## Aula 9\n\nTestando as validações do formulário da página de edição de uma destination aleatória\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- Validação de número mínimo de caracteres\n\u003c/details\u003e\n\n## Aula 10\n\nTestando a submissão com sucesso do formulário da página de edição de uma destination aleatória\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- Instalando a biblioteca faker (npm install faker —save-dev)\u003cbr\u003e\n    - O teste propriamente dito\n\u003c/details\u003e\n\n## Aula 11\n\nTestando o header de uma página aleatória\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- Como enxugar os testes e ainda manter a cobertura\u003cbr\u003e\n    - utils/pageSorter.js\n\u003c/details\u003e\n\n## Aula 12\n\nExecutando os scripts do package.json via atalhos do Visual Studio Code\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- lint\u003cbr\u003e\n    - lint:fix\u003cbr\u003e\n    - pretest\u003cbr\u003e\n    - test\u003cbr\u003e\n    - test:chrome\u003cbr\u003e\n    - test:firefox\n\u003c/details\u003e\n\n## Aula 13\n\nSimulando falhas\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- Simulando a falha em um ou mais testes\u003cbr\u003e\n    - Mensagens de erro do protractor-helper (https://github.com/wlsf82/protractor-helper#example-of-a-test-failure-when-using-such-methods-as-expectations)\n\u003c/details\u003e\n\n## Aula 14\n\nIntegração contínua\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- Colocando lint e testes para rodar no CI do GitHub\n\u003c/details\u003e\n\n## Aula 15\n\nÚltimos ajustes\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- Últimos ajustes no arquivo package.json (description, main, keywords, repository, author, license)\u003cbr\u003e\n    - Documentando o projeto (README.md)\u003cbr\u003e\n    - Título e descrição\u003cbr\u003e\n    - Badge\u003cbr\u003e\n    - Pré-requisitos (node, npm, chrome, firefox)\u003cbr\u003e\n    - Instalação\u003cbr\u003e\n    - Executando os testes e sub-seções\u003cbr\u003e\n    - Footer\n\u003c/details\u003e\n\n## Aula 16\n\nRevisão do projeto\n\n\u003cdetails\u003e\n  \u003csummary\u003eConteúdo da aula\u003c/summary\u003e\n    \u003cbr\u003e- Revisão final do projeto (estrutura de arquivos e diretórios) e suas relações com uma arquitetura limpa\u003cbr\u003e\n    - Possíveis evoluções\n\n\u003c/details\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdoamaral%2Fcurso-protractor-tat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdoamaral%2Fcurso-protractor-tat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdoamaral%2Fcurso-protractor-tat/lists"}