All Projects → utPLSQL → utPLSQL-demo-project

utPLSQL / utPLSQL-demo-project

Licence: Apache-2.0 license
Demo project using utPLSQL v3 with Travis as a CI server and SonarCloud for code analysis, coverage and test results

Programming Languages

PLSQL
303 projects
shell
77523 projects

Projects that are alternatives of or similar to utPLSQL-demo-project

Utplsql
Testing Framework for PL/SQL
Stars: ✭ 402 (+1575%)
Mutual labels:  unit-testing, oracle-database
Alsatian
TypeScript testing framework with test cases
Stars: ✭ 244 (+916.67%)
Mutual labels:  unit-testing
Truth
Fluent assertions for Java and Android
Stars: ✭ 2,359 (+9729.17%)
Mutual labels:  unit-testing
Transport Eta
Twitch streamed 🎥playground repo, README speaks to you.
Stars: ✭ 223 (+829.17%)
Mutual labels:  unit-testing
Archit Ios
Intelygenz iOS Architecture
Stars: ✭ 203 (+745.83%)
Mutual labels:  unit-testing
Camelotia
Cross-platform .NET sample GUI app for cloud file management. Built with ReactiveUI, AvaloniaUI, Universal Windows Platform, Xamarin Forms, and WPF, runs on Windows, Linux, Mac and Android.
Stars: ✭ 221 (+820.83%)
Mutual labels:  unit-testing
Mockbukkit
MockBukkit is a mocking framework for bukkit to allow the easy unit testing of Bukkit plugins.
Stars: ✭ 186 (+675%)
Mutual labels:  unit-testing
ttdo
Extend tinytest with diffobj
Stars: ✭ 21 (-12.5%)
Mutual labels:  unit-testing
Xmlunit
XMLUnit for Java 2.x
Stars: ✭ 232 (+866.67%)
Mutual labels:  unit-testing
Simple Headless Chrome
Simple abstraction to use Chrome as a Headless Browser with Node JS
Stars: ✭ 216 (+800%)
Mutual labels:  unit-testing
Vue Unit
Component testing utilities for Vue.js
Stars: ✭ 215 (+795.83%)
Mutual labels:  unit-testing
Electron Vue
An Electron & Vue.js quick start boilerplate with vue-cli scaffolding, common Vue plugins, electron-packager/electron-builder, unit/e2e testing, vue-devtools, and webpack.
Stars: ✭ 14,610 (+60775%)
Mutual labels:  unit-testing
Typescript Clean Architecture
It is my attempt to create Clean Architecture based application in Typescript
Stars: ✭ 225 (+837.5%)
Mutual labels:  unit-testing
Onion Architecture Asp.net Core
WhiteApp API solution template which is built on Onion Architecture with all essential feature using .NET 5!
Stars: ✭ 196 (+716.67%)
Mutual labels:  unit-testing
Eosfactory
Python-based EOS smart-contract development & testing framework
Stars: ✭ 247 (+929.17%)
Mutual labels:  unit-testing
Flink Spector
Framework for Apache Flink unit tests
Stars: ✭ 190 (+691.67%)
Mutual labels:  unit-testing
Dntframeworkcore
Lightweight and Extensible Infrastructure for Building Web Applications - Web Application Framework
Stars: ✭ 208 (+766.67%)
Mutual labels:  unit-testing
Sinon Jest Cheatsheet
Some examples on how to achieve the same goal with either of both libraries: sinon and jest. Also some of those goals achievable only by one of these tools.
Stars: ✭ 226 (+841.67%)
Mutual labels:  unit-testing
Guise
An elegant, flexible, type-safe dependency resolution framework for Swift
Stars: ✭ 53 (+120.83%)
Mutual labels:  unit-testing
Alcotest
A lightweight and colourful test framework
Stars: ✭ 248 (+933.33%)
Mutual labels:  unit-testing

Build Quality Gate Status

Main utPLSQL Project Build: Build Status

utPLSQL build using Liquibase Build Status

utPLSQL build using RedgateFlyway Build Status

CI/CD and Unit Testing for Oracle PLSQL

Demo project using utPLSQL, Travis and SonarCloud for continuous integration of PLSQL and SQL code.

This is a demo project using utPLSQL v3 for unit testing of Oracle PLSQL code. The project is also taking benefit of Continuous Integration with Travis CI server as well as static code analysis, code coverage and test results reporting using SonarCloud.

With every commit made to the github repository, a build job is executed using Travis CI.

The build process consists of following steps:

Demo project using utPLSQL, Azure Devops and SQLCL Liquibase / Redgate Flyway for continuous integration of PLSQL and SQL code.

This is a demo project using utPLSQL v3 for unit testing of Oracle PLSQL code. The project is also taking benefit of Continuous Integration with Azure Devops server as well as static code analysis, code coverage and test results reporting using SonarCloud.

With every commit made to the github repository, a pipeline is executed using AzureDevops CI. The pipeline is split into stages. Each stage is build from one job which is split into set of smaller tasks responsible for the whole build.

In our pipeline we used following setup for stages:

  • Build Database: During this stage we are deploying our code using SQLCL Liquibase. This ensures that syntax of command is correct as well as integrity of changes with others Tests are deployed to that database and executed. In our scenario we are forcing the failure into success using utplsqlcli option --failure-exit-code=0. Code coverage and test results are published and immutable artifact is created that will be propagated to next stages of deployment.
    • Build Stage consists of following steps:
      • Download binaries for utplsqlcli and sqlcl (this step is optional, its possible that in self hosted agent this will be part of agent etc.)
      • Provision a database from docker (this steps is optional and depends on your setup of databases, for example Delphix provisioning)
      • Clone utPLSQL repository and install utPLSQL sources into database
      • Create test user and install test packages
      • Execute Liquibase / Flyway commands to update database
      • Execute utPLSQL tests
      • Publish test results to pipeline
      • Execute SonarCloud analysis and publish results
      • Prepare artifact for publish to next stage

At the end of build stage we will produce immutable artifact that has been tested and can be passed downstream to deployment jobs.

  • Deploy Code to Database: During this stage we are using an artifact created during build stage. We will download it and deploy to the databases ( e.g. DEV,PRD, UAT, NFT etc.), during this stage running tests depends on project setup and the stage ( we will not be deploying tests to PRD but possible to DEV yes)
    • Deploy Stage consists of following steps:
      • Download binaries for utplsqlcli and sqlcl (this step is optional, its possible that in self hosted agent this will be part of agent etc.)
      • Provision a database from docker ( this step most likely you will not run as these databases will exists already)
      • Create user to deploy code to ( this step most likely you will not run as the user will exists already and we will update database)
      • Execute Liquibase / Flyway commands to update database
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].