Giter Club home page Giter Club logo

cvs-auto-svc's Introduction

cvs-auto-svc

This is the the project for creating and managing the backend services automated tests

Getting Started

These instructions will get you up and running with the automation framework.

Prerequisites

  • Browserstack credentials
  • Jenkins access
  • Java 1.8 and above
  • Maven
  • Git
  • NodeJs
  • IntelliJ

Setting Up

Git Hooks

Please set up the following prepush git hook in .git/hooks/pre-push

#!/bin/sh
npm run prepush && git log -p | scanrepo

Security

Please install and run the following securiy programs as part of your testing process:

https://github.com/awslabs/git-secrets

  • After installing, do a one-time set up with git secrets --register-aws. Run with git secrets --scan.

https://github.com/UKHomeOffice/repo-security-scanner

  • After installing, run with git log -p | scanrepo.

These will be run as part of prepush so please make sure you set up the git hook above so you don't accidentally introduce any new security vulnerabilities.

Config File

In the project structure create the file: cvs-auto-svc/src/main/resources/conf/environment.properties

(Do NOT add it to Git versioning !) The file should contain:

base.path.url=<test_environment_url>
no.data.base.path.url=<test_environment_url>
s3.bucket="cvs-cert-develop"
branch.name=<test_environment>
microsoftonline.url=https://login.microsoftonline.com/<azure_app_id>/oauth2/authorize?client_id=<azure_client_id>&response_type=id_token&redirect_uri=http://localhost:3000&scope=openid&response_mode=fragment&nonce=678910
microsoftonline.username=<automation_username>
microsoftonline.pass=<automation_password>
microsoftonline.url.v2=https://login.microsoftonline.com/<azure_app_id>/oauth2/v2.0/authorize?client_id=<azure_client_id>&response_type=id_token&scope=openid &redirect_uri=http://localhost:8100&nonce=12345
microsoftonline.username.v2=<automation_username>
microsoftonline.pass.v2=<automation_password>
browserstack.username=<browserstack_username>
browserstack.password=<browserstack_password>
data.location=develop
api.keys=<api_key>
app.token.url=https://login.microsoftonline.com/<azure_app_id>/oauth2/v2.0/token
app.client.id=<app_client_id>
app.scope=<app_scope>
app.client.secret=<app_client_secret>

Running locally

Running can be triggered from IntelliJ or via mvn command in the terminal

Running in CI

In Jenkins tests may be executed against either a branch or develop:

Execution is triggered via "Build with Parameters" job with the options to select the test group from the 'MVN_TAG' dropdown.

A full data reseed is also optional via a checkbox (selected by default)

Contributors

  • Bogdan Catalin Florea - @bflorea
  • Dragos Panzaru - @dpanzaru
  • Deepika Singh - @deepikasingh

cvs-auto-svc's People

Contributors

andrewf-bjss avatar bfloreadvsa avatar bhavia-dvsa avatar blondeholly avatar coalexandru avatar cvs-ops avatar deepikasinghd avatar dorinnicolae avatar dpanzaru-deloitte avatar githanium avatar hazelwilderspin avatar iuliadvsa avatar jgimber-deloitte avatar kpearmanbjss avatar leifkemp-bjss avatar lgvasile avatar martiuk avatar mcarrick1 avatar nblore avatar oparr11 avatar paddysmith0 avatar spwalsh94 avatar teoalexandru avatar wis-dvsa avatar zacm2 avatar zeyper avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

uk-gov-mirror

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.