Challenge Overview
Welcome to the NASA Search Portal Create Automated Test Scripts Challenge - Part 2. As part of this challenge, you will develop Automated Test Scripts using Selenium.
Project Overview
NASA needs your help building an enterprise search portal. NASA & Topcoder have completed the design and frontend code for a search interface that is intuitive for beginner to advanced users which allows users to search against NASA intranet as well as public internet data sets.
As part of this project, we are integrating the search engine (Solr Cloud) which will serve as a backend to the Enterprise Search User Interface and seek to expand the capabilities of the existing application.
Challenge Details
We have a Nodejs application that hosts a Search Portal that will be used by NASA internally. This application interfaces with Solr - an indexing engine.
The Search Portal currently has the following features:
-
Simple string search.
-
Exclude certain words and result domains from the search
-
Filter the results to a specific domain (Internet, Public Info and NASA Intranet). If filtered to NASA Intranet, the results can further be filtered to a NASA Center and Agency.
-
Filter to a type of result - example - Images, Audio, Video
-
Filter the results to a specific date range - example - results from the past 24 hours, within a week.
-
Sorting the results based on the date.
-
Pagination to restrict the number of results returned.
-
A chart that shows the distribution of results across the three domains mentioned in point three above.
-
Allow the user to save the search criteria.
We ran a Test Scenarios challenge earlier and now we have over 180 Test Scenarios. We would like you to use Selenium to create Automated Test Cases for the Test Scenarios starting from 93 and ending at 184. You can also use Mocha / Chai and set up grunt tasks to execute them. We will provide you with the submission from the Part 1 challenge. We expect your submission to follow the same design / conventions used in submission from the Part 1 challenge. Do not try to start from scratch - Enhance the provided submission to cover the remaining test scenarios basically.
You can assume the browsers to be the latest Google Chrome, IE11 , Firefox and Safari.
Naming Convention
Kindly name each test using the following convention:
TESTXX_ShortDescription.
Example: Test012_VerifyResultFormat
Language
You are to use Nodejs to develop the tests and integrate with the Selenium WebDriver. You can use Mocha / Chai with Grunt scripts too.
Documentation
Your submission will be used by NASA. Thus, kindly make sure that your documentation is thorough and includes clear setup instructions.
Operating System
If you would like to know the OS to which the application will be deployed, it is RHEL 6.7
Final Submission Guidelines
You need to submit the Selenium Automated Test Scripts and / or Mocha / Chai Test Scripts and a new Deployment Guide (just for executing the tests) if needed.