qa-end-to-end
This project aims at helping QA people to write maintainable automated end-to-end tests for web based applications with #JavaScript, #Protractor and #Selenium
Why learning how to write automated Tests?
- because it's cool
- because you become much more valuable for your company
- because repetitive tasks should be executed by a machine
- because you can compose your test cases with the actual source code
- because you can export your test result reports in pretty much every format
Before you even start
Take yourself some time to read about general programming concepts, JavaScript (ES2015/ES6 and newer), HTML5 and DOM Selectors (css, xpath, etc...)
Try to broadly understand how Git works, and get a litte bit comfortable with the git bash or git cmd (which you have after the installation of Git)
If you are bored by now and don't want to continue then it's fine! You then should probably go back to Selenium IDE (which kind of gets the same things done, but not really though because your test cases are defined seperately from your source code) or even manual regression testing... LOL
Prerequisites
- Git - source control management
- NodeJS - javascript runtime environment
- Visual Studio Code - text editor (IDE)
- Java SDK - you will need it for Selenium
Note that after installing everything you may have to restart your Computer.
Installation
-
Start VSCode
-
In VSCode go to File -> Open Folder -> Select some folder where you want to put this project
-
In VSCode go to Terminal -> New Terminal
-
Inside the Terminal clone this repository into your current folder
git clone https://github.com/saxsys/qa-end-to-end.git "."
-
Install node packages
npm install
wait until all packages are installed
-
In VSCode open another Terminal (do not close the old one, you will need two)
-
Inside the new Terminal update and start the Selenium Server
npm run serve
make sure your Selenium Server is running, if the terminal freezes then close it and repeat the task
-
Go back to the first Terminal and run the Specs
npm run start
-
View the reports
npm run view-report