All Projects → openshift → verification-tests

openshift / verification-tests

Licence: GPL-3.0 license
Blackbox test suite for OpenShift.

Programming Languages

Gherkin
971 projects
ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to verification-tests

CodeSpecJS
UI Automation Testing without writing a single line of code
Stars: ✭ 16 (-60.98%)
Mutual labels:  test-automation, cucumber
BDTest
BDTest - A Testing Framework for .NET
Stars: ✭ 58 (+41.46%)
Mutual labels:  test-automation, tests
Telegraf-Test
Telegraf Test - Simple Test ToolKit of Telegram Bots
Stars: ✭ 22 (-46.34%)
Mutual labels:  test-automation, tests
arduino-ci-script
Bash script for continuous integration of Arduino projects
Stars: ✭ 25 (-39.02%)
Mutual labels:  test-automation, tests
Mobileautomationframework
Single code base framework to test android and iOS app using appium (v6.1.0), maven, testng,java. Option to start appium server programmatically.
Stars: ✭ 66 (+60.98%)
Mutual labels:  test-automation, cucumber
Karate
Test Automation Made Simple
Stars: ✭ 5,497 (+13307.32%)
Mutual labels:  test-automation, cucumber
karate-runner
VSCode Extension for Karate
Stars: ✭ 23 (-43.9%)
Mutual labels:  test-automation, cucumber
Cypress
Fast, easy and reliable testing for anything that runs in a browser.
Stars: ✭ 35,145 (+85619.51%)
Mutual labels:  test-automation, tests
Arquillian Cube
Control (docker, kubernetes, openshift) containers in your tests with ease!
Stars: ✭ 110 (+168.29%)
Mutual labels:  openshift, test-automation
karate
Test Automation Made Simple
Stars: ✭ 6,384 (+15470.73%)
Mutual labels:  test-automation, cucumber
sarjitsu
dockerized setup for visualizing System Activity Report (SAR) data.
Stars: ✭ 20 (-51.22%)
Mutual labels:  openshift
openshift-on-footloose
Running Openshift on Footloose, docker in docker
Stars: ✭ 27 (-34.15%)
Mutual labels:  openshift
codewind-eclipse
Plugin for developing cloud-native, containerized applications from Eclipse IDE
Stars: ✭ 13 (-68.29%)
Mutual labels:  openshift
neodymium-library
A test automation library based on common other best practice open source libraries. It adds missing functionalities but does not reinvent the wheel. Just glues stuff together nicely and adds some sprinkles.
Stars: ✭ 70 (+70.73%)
Mutual labels:  test-automation
moler
Moler – library to help in building automated tests
Stars: ✭ 54 (+31.71%)
Mutual labels:  test-automation
allure-ruby
Allure integrations for Ruby test frameworks
Stars: ✭ 40 (-2.44%)
Mutual labels:  cucumber
featurebook
A command line tool (and Node.js library) for generating beautiful system specifications from Gherkin source files.
Stars: ✭ 40 (-2.44%)
Mutual labels:  test-automation
okd4-upi-lab-setup
Building an OKD 4 Home Lab
Stars: ✭ 72 (+75.61%)
Mutual labels:  openshift
cloudpods
A cloud-native open-source unified multi-cloud and hybrid-cloud platform. 开源、云原生的多云管理及混合云融合平台
Stars: ✭ 1,469 (+3482.93%)
Mutual labels:  iaas
kourier
Kourier is a Knative Serving Ingress. It has been adopted by Knative, and we keep developing it at: github.com/knative/net-kourier
Stars: ✭ 47 (+14.63%)
Mutual labels:  openshift

Cucumber based blackbox testing framework for OpenShift

Getting started

More info you can find in Overview document.

Create local dev environment

  1. Install git if not installed already, install ruby 2.7+ if not installed

  2. git clone [email protected]:openshift/verification-tests.git

  3. cd verification-tests

  4. tools/install_os_deps.sh # need sudo; you may need to login again to terminal if ruby was installed via rvm during this phase (see below for RVM usage)

  5. tools/hack_bundle.rb # normal user

  6. Install OKD or OpenShift Container Platform client tools

  7. Install the web driver if you desire to run tests which work with the Web UI. See Web Driver

Update local dev environment

bundle update

Test scenario execution

This is an example:

export BUSHSLICER_DEFAULT_ENVIRONMENT=ocp4
export OPENSHIFT_ENV_OCP4_HOSTS=api.*.openshift.com:lb
export OPENSHIFT_ENV_OCP4_USER_MANAGER_USERS=user1:redhat,user2:redhat
export OPENSHIFT_ENV_OCP4_ADMIN_CREDS_SPEC=file:///home/path-to/kubeconfig
export BUSHSLICER_CONFIG='
global:
  browser: firefox
environments:
  ocp4:
    version: "4.9.0"
    #api_port: 443	# For HA clusters, both 3.x and 4.x
    #api_port: 6443	# For non-HA 4.x clusters
    #api_port: 8443	# For non-HA 3.x clusters
    #web_console_url: https://console-openshift-console.apps.*.openshift.com
'

# execute a whole feature file
bundle exec cucumber features/cli/create.feature
# or execute a single scenario
bundle exec cucumber features/cli/create.feature:5
# or execute the smoke tests
bundle exec cucumber --tags @smoke

You can check which environments are defined in config/config.yaml.

You could also use the BUSHSLICER_CONFIG variable to override other configuration options. Add YAML/JSON into it and it will be merged with configuration file.

Debugging failures

If any step fails, you will fall into a pry shell where you can investigate what’s going on. This behavior depends on Cucumber profile that you enable during execution.

  1. running steps using step 'Step name'

  2. inspecting the @result variable

  3. calling and methods in World

Running tests from outside this repository

You can put your private test scenarios under features/tierN directory. It is in .gitignore so that you can keep your test scenarios under the same file system tree without git messing them up.

Contributing

Please submit issues and pull requests to the project. You can discuss and ask questions on OpenShift mailing list.

RVM for dependency management

If you are planning on installing dependencies for verification Tests on your system, it is often a good idea to use some kind of Version Manager/Package manager, like RVM.

RVM is analogous to virtualenv in python and it stands for Ruby Version Manager.

You can install RVM and read more abou it on https://rvm.io/

Usually once RVM is installed, you would want to create/install a new rvm interpreter using:

When we install Ruby 2.7.1, it creates a local directory for your user with Ruby 2.7.1 under `~/.rvm/rubies/ruby-2.7.1`.
Once that is done, the Gemset creation is basically an attempt to have dependencies for various apps under same interpreter `2.7.1`. So in this case,
we are creating Gemset `verification-tests` for this repo dependencies. If you had multiple repos, you would use similar command as above to create a new Gemset under 2.7.1
and give it a name that you can recognize. Then for each respective app you may choose to use different gemset as `rvm use 2.7.1@verification-tests` or `rvm use 2.7.1@my-other-repo-or-app`

Feel free to read about interpreter and gemset in the Ruby docs or elsewhere on the internet.

Once ruby is installed, interpreter is created and gemset is present and activated, you can run `which ruby` to validate if the correct ruby is used and `ruby -v` to check version.
Following this, you may continue the steps as mentioned above, to run `bundle` commands to install gems listed in Gemfile to your Gemset.

Also if you are wondering what does `bundle` command do, search and read about `ruby bundler` on the internet.
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].