code for the Mobiquity QA challenge assignment

Overview

Production test execution flow

MOBIQUITY QA CODE CHALLENGE

This repository contains the code for Mobiquity code assignment for the Senior QA engineer position.

Tech Stack

the tools and language used are:

  • Kotlin as programming language
  • Serenity BDD as main library, that includes:
    • Rest-assured wrapper
    • Screenplay implementation
    • Cucumber integration
    • Test Reporting
  • Cucumber were used as test specification tool (the latest version were used that includes support to Rule keyword in Gherkin)
  • Maven
  • Hamcrest for assertions
  • GitHub Actions as CI

Test Scenarios

In order to implement the assignment, the following flows were tested:

  1. Users search: Test scenarios that covers Searching users by different queries were added
  2. Posts search: Test that verify searching posts using different queries like, userId, title or postId were implemented
  3. Comments search: This cover the main test flow asked in the challenge, scenarios that covers searching comments using simple and complex queries (like comments made to all the posts of a user) were added, all the verifications checks valid emails.

How to execute

In order to run the tests, these things are needed:

  1. Java 11 or greater
  2. Maven (tested with the latest version)
  3. If tests are going to run locally is necessary to deploy the typicode serve first, there is a DockerFile in the project that deploys it.
  4. to run the tests pointing to a local server run the command mvn clean verify
  5. to run the tests pointing to the official server deployment run the command mvn clean verify -Denvironment=production
  6. After test execution a SerenityBDD report will be generated located at target/site/serenity

CI

For this project GitHub actions were used as CI, by default any commit made to the development branch will run the test pointing to a local server (deployed in the CI environment using Docker). Any commit made to master branch will run the tests against the production deployment.

Test Reports

Test results are deployed to GitHub Pages: Test Reports

You might also like...
Android Camper parking app written in kotlin for assignment 2 of Mobile App Development
Android Camper parking app written in kotlin for assignment 2 of Mobile App Development

Technical Report Splash view Application shows a splash screen when opened. The

SimpleToDo - Simple
SimpleToDo - Simple "To-Do" App for CodePath Prework Assignment

Project 1 - Simple ToDo App Simple ToDo is an android app that allows building a todo list and basic todo items management functionality including add

Kurly-assignment - Search GitHub Repository App For Android
Kurly-assignment - Search GitHub Repository App For Android

Search GitHub Repository App Outline Github 내의 수많은 리포지토리를 키워드를 통해 검색할 수 있습니다. Ho

 ABSA Android Take Home Assignment
ABSA Android Take Home Assignment

ABSA Android Take Home Assignment Writing the Make Up App challenge using Android Architecture Components, in 100% Kotlin :kotlin: Requirements Create

Mobile Course Assignment 5
Mobile Course Assignment 5

Assignment5 Mobile Course Assignment 5 Widgets that I Use TextView Button Circular Image View Libraries that I use Jetpack Navigation Circular ImageVi

remote technical interview Android challenge app

Android challenge We would like to learn more about how you approach a challenge as an Android Engineer. There is a simple app that isn’t made with be

Coding Challenge for ParadoxCat

WavDecoder Coding Challenge for ParadoxCat WavHeaderReader This class takes the ByteArray which supposed to be a 44 bytes length array from the very s

Fourthwall Android Challenge

Fourthwall Android Challenge This is the implementation of Fourthwall Android Coding Challenge Technologies used: Kotlin + Android Studio This project

An Android application sample for ClearScore coding challenge

ClearScoreChallenge An Android application sample for ClearScore coding challenge Libraries Coroutines for managing background threads. (A coroutine i

Owner
ricardo larrahondo
ricardo larrahondo
Nab-challenge - Take home challenge from NAB in partnership with Positive Thinking Company

nab-challenge Take home challenge from NAB in partnership with Positive Thinking

Hieu Vu 0 Dec 30, 2021
Android-coding-challenge - Vien Health Android coding challenge

Vien Health Android coding challenge Tasks There's a series of tasks to complete

Ezekiel Sebastine 1 Jun 27, 2022
A template for Advent of Code challenge with input downloading and prepared test classes

Advent of Code Kotlin Template A template which will help you concentrate on the puzzle solutions. It brings Downloading and caching of the puzzle inp

Henning B 2 Dec 1, 2021
Advent of Code in Kotlin. Jetbrains challenge.

aoc-kotlin-2021 Welcome to the Advent of Code1 Kotlin project created by xreaper95 using the Advent of Code Kotlin Template delivered by JetBrains. In

Luis Ernesto Del Toro Peña 9 Mar 1, 2022
Solution to the 2021 Advent of code challenge in Kotlin. aoc-2021-in-kotlin

advent-of-code-2021 Welcome to the Advent of Code1 Kotlin project created by aniobistanley using the Advent of Code Kotlin Template delivered by JetBr

null 0 Dec 24, 2021
An assignment app for Caper AI

JungsooAppCaperAI This is an assignment app for Caper AI. This app shows a list of products locally saved in room database to a user. User can tap on

Shahrukh Malik 0 Oct 15, 2021
This assignment has been given to me for Android developer position at SonyLiv.

asssignmentSonyLiv This assignment has been given to me for Android developer position at SonyLiv. This codeis not full functional but can give a cont

Rudra Chouhan 0 Nov 21, 2021
payhere online assignment

가계부 API 설명 실행 모든 컨테이너 실행 docker-compose up docker-compose up - d // 백그라운드 실행 데이터베이스만 실행 docker-compose up database docker-compose up -d database // 백그

Jerry 0 Jan 5, 2022
The goal of this assignment is to implement GameOfFifteen

Game of Fifteen Demo The board for the game of Fifteen is filled randomly with numbers from 1 to 15 and one empty space. You can move the neighboring

Josue Lubaki 0 Dec 6, 2021
A Prework Assignment COdepath for Android

PreWork_SimpleTodo_Android This is a Prework Assignment Codepath Project 1 - Sim

Laxman Reddy Aileni 0 Dec 19, 2021