All Projects → igniteram → protractor-cli

igniteram / protractor-cli

Licence: MIT license
🎯 An Interactive command line interface & config helper for Protractor.js !

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to protractor-cli

Ng Pokedex
🐵 Pokedex progressive web app built with Angular
Stars: ✭ 245 (+1650%)
Mutual labels:  protractor, angular-cli, e2e
angular-cli-skeleton
angular-cli skeleton to quickly start a new project with advanced features and best practices. All features are described in README.md.
Stars: ✭ 32 (+128.57%)
Mutual labels:  protractor, e2e
Protractor Best Practices
Stars: ✭ 65 (+364.29%)
Mutual labels:  protractor, e2e
angular-webpack-skeleton
This project is deprecated. Please refer to https://github.com/Ks89/angular-cli-skeleton
Stars: ✭ 16 (+14.29%)
Mutual labels:  protractor, e2e
Kakunin
An E2E testing framework
Stars: ✭ 141 (+907.14%)
Mutual labels:  protractor, e2e
OCT-Converter
Tools for extracting the raw optical coherence tomography (OCT) and fundus data from proprietary file formats.
Stars: ✭ 120 (+757.14%)
Mutual labels:  e2e
angular2-node-fb-login
Demo application that shows how to enable Facebook login with Angular 2 on frontend and Node.js/Express on backend
Stars: ✭ 55 (+292.86%)
Mutual labels:  angular-cli
ng2-forms
Demo app for angular reactive nested forms
Stars: ✭ 25 (+78.57%)
Mutual labels:  angular-cli
enterprise-angular-seed
Angular CLI based seed application incorporating many best practices typically needed in Enterprise apps.
Stars: ✭ 62 (+342.86%)
Mutual labels:  angular-cli
angular-starter
🚀 Angular 14 Starter with Storybook, Transloco, Jest, TestCafe, Docker, ESLint, Material & Prettier 🚀
Stars: ✭ 124 (+785.71%)
Mutual labels:  angular-cli
cypress-page-object
Represent the screens of your website as a series of objects in your Cypress test suite
Stars: ✭ 23 (+64.29%)
Mutual labels:  e2e
ng2-stompjs-demo
Angular 2 demo using stomp.js in Typescript
Stars: ✭ 42 (+200%)
Mutual labels:  angular-cli
meazure
Screen magnification, measurement, capture and color sampling for Windows.
Stars: ✭ 55 (+292.86%)
Mutual labels:  protractor
jest-retry
Jest retry pattern for flaky E2E tests
Stars: ✭ 36 (+157.14%)
Mutual labels:  e2e
angular
Un framework. Móvil y escritorio.
Stars: ✭ 47 (+235.71%)
Mutual labels:  angular-cli
angular-i18n-localization
An angular application with i18n and localization implemented.
Stars: ✭ 22 (+57.14%)
Mutual labels:  angular-cli
notus-angular
Notus Angular: Free Tailwind CSS UI Kit and Admin
Stars: ✭ 148 (+957.14%)
Mutual labels:  angular-cli
node-casperjs-aws-lambda
Base scaffolding app for a casperjs/phantomjs app running on Amazon (AWS) Lambda
Stars: ✭ 52 (+271.43%)
Mutual labels:  angular-cli
cypress-maildev
Cypress Maildev is a bunch of Cypress commands in order to test your messages (SMS and Emails) by using Maildev REST API.
Stars: ✭ 19 (+35.71%)
Mutual labels:  e2e
Review System Demo
A Spring Boot and AngularJS boilerplate project.
Stars: ✭ 18 (+28.57%)
Mutual labels:  protractor

protractor-cli.png

An Interactive command line interface & config helper for ProtractorJS

circleCI Status commitizen dependencies status npm version JEST contributors MIT License


About | To Get Started | Installation | Commands

About

Protractor-CLI(formerly Cliptor.js) is an interactive command line interface which helps in setting up hassle free protractor projects. It takes user's inputs for generating protractor config files and also downloads the dependencies needed for writing e2e tests.

cliptor.gif

What protractor-cli is trying to solve?

Since protractor supports multiple frameworks and has many functionalities associated with them , users face it quite challenging to know the config options and experience a hard time to choose the right library to use in their e2e projects.

This project focuses primarily to solve these issues by generating config files based on user's input and downloads the respective dependencies automatically.

To Get Started

Pre-requisites

1.NodeJS installed globally in the system. https://nodejs.org/en/download/

Installation

Let's start by installing protractor-cli globally with npm.

$ npm install --global protractor-cli

Commands

A global binary cliptor will be installed, currently it supports two primary commands - config & install with no arguments. cliptor --help will show these list commands. cliptor --version will show the current version of cliptor.

config

$ cliptor config

Starts protractor's interactive cli, generates config files & downloads protractor related dependencies!

install

$ cliptor install

This installs protractor & webdriver-manager globally, it also updates webdriver-manager which downloads chrome, firefox & internet explorer drivers. One can skip this step and use the cliptor config command if they want to run selenium server in other ways!

Library Support

Protractor-CLI supports all the major libraries and frameworks that Protractor currently supports, let us have a look-

Test Frameworks

Jasmine being the default framework. Mocha & Cucumber have good support as well!

Transpilers

Since this project has been entirely written using TypeScript. You would find extensive support for it. Protractor also has recently migrated to typescript.

You could use the typescript features by simply selecting your specific framework & transpiler option provided by protractor-cli.

Jasmine being the default framework , protractor-cli asks whether you would want to use typescript as a transpiler which then installs typescript, jasmine types and also generates tsconfig.json automatically!

Coffee-Script support has also been provided with mocha & cucumber frameworks. You could write your scripts using coffee-script and the above frameworks will auto-compile them. The best part is you don't have to do it manaully as protractor-cli does it for you!

Browser Configuration

Protractor-CLI supports all three major browser configuration -

Test Environments

  • Local Machine - It is your local test development environment
  • Cloud Service - If you want to develop and maintain your test scripts in cloud services like - Sauce Labs & BrowserStack.
  • Remote Machine - If you know the address of a remote machine where selenium server resides you could use this environment configuration.

Logging

Protractor has 4 types of logging mechanism -

  • info (default)
  • warn
  • debug
  • error

One could refer this StackOverFlow link to understand what they are and when to use them. Normally you would have to configure these in your config file manually but now protractor-cli does it for you.

Reports

Protractor-CLI installs & configures popular & well maintained report modules which could be integrated with protractor.

Framework Report Types Report Module
Jasmine
dot

spec

json

html

Protractor jasmine's default dot console reporter

jasmine-spec-reporter for flashy console spec reporter

Protractor's resultJsonOutputFile config option generates json reports

protractor-jasmine2-screenshot-reporter for html reports.
Mocha
dot

spec

json

html

Mocha's default dot console reporter in mochaOpts

Built in spec console reporter

Built in mocha's json reporter

Mochawesome for html reports.
cucumber
progress

summary

json

html

Cucumber's default progress console reporter

Summary console reporter

Json reporter which generates cucumber json reports

cucumber-html-reporter for html reports.

Contributions

For contributors who want to improve this repo by contributing some code, reporting bugs, issues or improving documentation - PR's are highly welcome, please maintain the coding style , folder structure , detailed description of documentation and bugs/issues with examples if possible.

Development Hints

Please see DEVELOPER.md

Attributions

Protractor-CLI was mainly inspired by WebdriverIO’s cli. I would also like to give credit to the Angular’s Protractor community for creating such a wonderful project which inspired this project development.

Contributors


Ram Pasala

💻 📖 ⚠️ 🐛

Craig Nishina

💻 🔌

Thanks goes to these wonderful people (emoji key):

This project follows the all-contributors specification. Contributions of any kind welcome!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].