Skip to content

Instantly share code, notes, and snippets.

@tamarr
Created August 16, 2022 08:08
Show Gist options
  • Save tamarr/63170021d8c36110ee1bc014f19479c7 to your computer and use it in GitHub Desktop.
Save tamarr/63170021d8c36110ee1bc014f19479c7 to your computer and use it in GitHub Desktop.
QA automation home assignment

Objective

In this assignment we will ask you to build a test plan for a small functions flow from our SDK.

Brief

The SDK team at Ludeo has build a library that allows our partners to integrate with us. Help the team get confidence in release and further development by automatically testing the most critical aspects of these functions by doing the following:

Tasks

Compile a list of several testable flows, cases, or scenarios. This doesn't have to cover every possible real-life case; please focus on what you think is most fundamental.

Our integrators are trying to capture information in their game using our provided library and store it on our backend platform. The library exposes 3 functions:

  • StartTracking takes in the user id as integer. For example StartTracking(123).
  • SetValue takes in a key (string) and value, which can be either an integer, a string or a boolean. For example SetValue("MyHP", 543) or SetValue("PlayerName", "Jane").
  • Upload uploads the user id and key-value pairs in a POST to the endpoint https://eohfzgy928n03qu.m.pipedream.net. This function returns the web response. For example Upload() will send {"UserId": 123, "MyHP": 543, "PlayerName": "Jane"}.

They need to be called in this order with StartTracking and Upload to be called once and SetValue multiple times in between. Create a test plan for this flow.

Evaluation Criteria

Your test plan will be evaluated on it's completeness and clarity. Feel free to include code example or a working code solution in a language of your preference.

CodeSubmit

Please organize, design, test, and document your code as if it were going into production - then push your changes to the master branch.

Have fun coding! 🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment