Skip to content

kasunkv/protractor-starter

 
 

Repository files navigation

Protractor-TypeScript Starter

Build Status Codacy Badge npm semantic-release Commitizen friendly Join the chat at https://gitter.im/protractor-starter/Lobby

Description

Protractor starting kit for writing end-to-end tests for angular.js applications. Using TypeScript for strong typing and rich code completion suppor mixed with useful plugins built-in to the starterkit to help you get started writing protractor tests in no time.

Documentation

Still to come.

Contributing

Protractor-TypeScript Starter needs your contribution. Feel free to contribute to the project to make it even better. Suggest features, fix issues and improve. All contributions are welcome. Follow the bellow steps to get started.

  • Fork the repository
  • Create a feature branch by running git checkout -b new-feature
  • Add your changes by running git add .
  • Commit your changes with npm run commit (We use Commitizen and Conventional Changelog. Please see bellow for more details)
  • Push to the branch by git push origin new-feature
  • Submit Pull Request.

Prerequisites

  • npm and Node.js 4.6.1 are prerequisites to have
  • you can check your versions for both by running the following code in your terminal
$ node -v
$ npm -v

Install Packages

$ npm install # install the npm packages 
$ typings install # install TypeScript typings

You also need es6-promise

  • if this does not load with npm install

    Run in your terminal: $ npm install es6-promise --save

Run Tests

NPM is configured to run the tests. After the package installation run the following in the terminal.

$ npm run test

A pre-test step is configured to run before npm run test to compile the TypeScript in to ES5 code. To run this manually by running the following line in a terminal

$ npm run compile # this runs the configued npm script to compile TypeScript

Commit Guidelines (Git Commit Convention)

A strict commit guidelines are followed so that its easy to do release with semantic versioning. Semantic Release package is used to do this. Commitizen is used with Commitizen Conventional Changelog to add proper commit messages. Git hooks created using ghooks are inplace to enforce the commit format used in the project. Each commit message consists of a header, a body and a footer. The header has a special format that includes a type, a scope and a subject. The commit message format is bellow.

<type>(<scope>): <subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>

Header is mandatory and the scope is optional, But its encouraged to add a scope. Footer is also optional. To perform a commit follow these steps

# Add the files you want to commit
$ git add <FILES_TO_COMMIT>

# Use the configured ghook
$ npm run commit

Read More to learn about Commitizen and its conventions.

License

MIT © 99X Technology

About

Protractor end to end testing boilerplate

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 79.2%
  • TypeScript 20.8%