mashmn / qa-exercise

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Setup:

In order to install the NSS-TODO-List (extended) application:

  • Make sure that you have a server installed that can serve PHP. Apache would be a good option.
  • Make sure you have a PHP 5.2.5 or higher installed on your system.
  • Note: You can download an installer like XAMPP for the above two requirements.
  • Start the Apache server if it is not already running. Verify by going to localhost in your browser
  • Checkout the project and put all its contents in the 'htdocs' (/www) folder of Apache.You may need to mount same via XAMPP
  • Note: You may want to explore your file read/write permissions on your local file system.
  • Go to http://localhost/dotdash-project/index.php (or whatever name you have given to the folder containing all of the project files) and access the application.

Test Cases:

Write test cases to test various functionalities and features of this app. Imagine you are a QA Lead and how would you go about successfully testing this app. The more scenarios you cover the better coverage you can provide.

Front End Automation:

Automate the above test cases in order to test the functional flow through of the application. In particular, we want to test options around creating a todo, assigning categories, modifying/deleting existing todos etc. The application should itself be fairly self-explanatory. Feel free to email us (jsarda@dotdash.com) with any questions about it. Please use the application first to populate data for API. 1. Use webdriver to create the test scripts. Preferably in Java. 2. Create a PR against current project or provide your github link for changes.

API Test Cases:

Note: There can be more than below suggested test cases.
  • Test service status of the API endpoint (only one in this case)
  • Find how many tasks do not have "category" assigned
  • Aggregate and print only "task names"
  • Read API response and print tasks in descending "due date" order
  • Count and validate the number of tasks

API Automation:

The goal is to use access the fake API call at http://localhost/nss-todo-automation/fake-API-call.php and automate above suggested test cases. Note that API test are not expected to created using webdriver. We expect you to find right library to perform reuired task.

Submission instructions:

Follow the Github standard collaboration procedure.

Option A:

You can fork this repository, setup a local branch, push the references (changes) remotely and then ccreate a pull request back to us us.

Option B:

You can be added as a collaborator to this project where you can create your own separate branch and commit changes to it. For second option your Github username handle needs to be authorized by this project owner.

Option C:

It is also fine if you already have a personal GitHub repository and you would want to avoid pull requests. Just sumbit the proper link t hat points to your exercise.

Resources:

Thank you!

About


Languages

Language:HTML 48.4%Language:PHP 27.5%Language:Java 15.4%Language:CSS 5.1%Language:JavaScript 3.4%Language:Gherkin 0.2%