Challenge Overview
Get started is very easy! Follow these steps :
- Setup environment following this github article (you need permission to view it)
- Checkout csfv_test_data_generator
- run 'npm install'
- run 'node app.js' wait until it says that data generation completed then kill the app
- Checkout csfv_frontend_module
- copy .env_sample to .env
- configure your hosts file to point csfv.com at 127.0.0.1
- run 'npm install' - use latest stable nodejs version
- Make sure memcached, and mongo db are running.
- run 'node app.js' or 'forever app.js'
- You are ready go code!
Project Overview
This project, the CSFV Community Gaming website project will provide the web site infrastructure and integration of the games. This will be a web site that is available on the Internet, and also will be delivered in a form where the server and the games can be installed and used behind a firewall.
The goal of this contest is to build Selenium testing scripts in NodeJS. This challenge will implement an initial suite of Selenium test cases for the CSFV website, giving us a base to build from for future testing challenges.
Tips for success:
- Asking questions early and getting feedback is very important for the success of this competition.
- Raise questions if you feel anything is confusing, or if you have any questions on the provided documentation (Copilot and PM will be available to answer questions).
Test cases
The forum contains test scenarios. We are going to implement all functional tests in the test scenario excluding the following :
- Already implemented requirements are out of scope :) The provided test suites implemented Home, Login/Logout and Register.
- 1.1 - Home page
- 1.2 - /games pages
- 7 - Login/Logout
- 8 - Register
- 1.3 - My Home - /myHome page is out of scope.
- Verifying emails is not doable in Selenium so you are not expected to do it.
- We have made changes to Register test scenarios you need to implement :
- Changed scenarios cases :
- 230, 252, 263, 268, > 381 (type 16)
- New scenario : 253 - Verify social network auto connect
- New scenario : 254 - Verify social network auto connect (popup version)
- New scenario : 255 - Verify social network auto connect (not verified account)
- Changed scenarios cases :
Required Browsers
- IE 8+
- FF Latest (Mac and PC)
- Safari Latest (Mac and PC)
- Chrome Latest (Mac and PC)
Selenium
We use the Selenium framework for the tests:
https://code.google.com/p/selenium/
http://docs.seleniumhq.org/projects/webdriver/
Naming convention
Please name each test like this:
TestXX_ShortDescription. For instance, for test 1, we would name it:
Test001_VerifyLoginSelectorPage
Conflicts
If there are any test scenarios that conflict with the deployed web application, we will follow the existing code, not the scenario.
Code modifications
If you would like any modifications to the existing web code that would make things easier, please ask about it in the forum.
Language
Please use NodeJS to develop the tests and integration with the Selenium WebDriver.
Test Data Generator
You might need to update csfv_test_data_generator to match the 'test data' sheet in the provided test scenario.
Documentation
Step by step deployment documentation is critical for this application. Your deployment documentation must be thorough and include clear setup information to aid the copilot and reviewers.
Github Code
The code is hosted in priviate github repositories :
- csfv_frontend_module - main website web application.
- csfv_test_data_generator - test data generator that generate all required content for the website
If you cannot view these repositories, then post in challenge forums with your github account username to be added to Github repo.
Existing Documents
Provided in challenge forums :
- CSFV Test Suites you will use as basis for your work.
- Test scenarios
Final Submission Guidelines
Submission Deliverables
The competitors in this competition are expected to provide the following deliverables:
- Implemented test scripts using Selenium and their configuration (with build scripts).
- Deployment Guide.
- Any other files needed.
Final Submission
- Your final submission must contain a single .zip file with all the submission deliverables.
- For each member, the final submission should be uploaded via Online Review page.
- You must not include any identifying information, such as your handle, in your submission. Your submission should be anonymous and you will be scored down in screening for not complying.