Skip to main content

API testing for BC Data Catalog

Project description

Automated BCDC API Testing

Intention is to test the CKAN API after deployment.

Current tests include:

  • verification of preconfigured orgs required for testing
  • CRUD tests for packages.

OCP Build for BCDC-TEST

pulls package from https://pypi.org/project/bcdc-apitests/ new OC build triggered by github actions on commit to master branch

how to create new build from build config

oc create -f https://raw.githubusercontent.com/bcgov/bcdc-test/master/k8s/bcdc-test-buildconfig.yaml

start build

oc start-build bcdc-test -n databcdc

OCP Job Template for BCDC-TEST

example how to run job from template

oc process -f https://raw.githubusercontent.com/bcgov/bcdc-test/master/k8s/bcdc-api-test-job-template.yaml -p BCDC_URL_CONFIG_NAME='cadi-bcdc-url' -p BCDC_API_SECRET_NAME='cadi-bcdc-api-key' -p ENV=dev | oc create -f -"

Required parameters to override in template

BCDC_URL_CONFIG_NAME = <Config Name in OCP to get URL of ckan instance to run against>
BCDC_API_SECRET_NAME = <Secret Name in OCP to get ckan api key>
ENV = <App Env to run in>

OCP Build for BCDC-TEST-DEV

pulls from https://pypi.org/project/bcdc-apitests-dev/ new OC build triggered by github actions on push to dev branch

oc create -f https://raw.githubusercontent.com/bcgov/bcdc-test/master/k8s/bcdc-test-buildconfig-dev.yaml

OC Job Template for BCDC-TEST-DEV

oc process -f https://raw.githubusercontent.com/bcgov/bcdc-test/master/k8s/bcdc-api-test-job-template-development.yaml -p BCDC_URL_CONFIG_NAME='cadi-bcdc-url' -p BCDC_API_SECRET_NAME='cadi-bcdc-api-key' -p ENV=dev | oc create -f -"
Required parameters to override in template

BCDC_URL_CONFIG_NAME = BCDC_API_SECRET_NAME = ENV =


# OC Job Cleanup 
* to be performed on a regular basis to cleanup old pods created by jobs

to view all jobs

oc get job

to delete all jobs by label

oc delete job -l name=ckan-api-test

# Run Tests locally

pip install pypandoc pip install bcdc_apitests export BCDC_API_KEY= export BCDC_URL= pytest --pyargs bcdc_apitests


# Packaging

### disable teardown
`--df` Include this switch if you want to disable teardown that deletes the test 
data that gets generated by the test suite.  The various options basically tell the 
test suite not to delete a particular type of data that are generated by the tests.

Options include:
* *orgs*
* *groups*
* *packages*
* *resources*
* *users*
* *other*
* *ALL*

# Packaging

Packaging is currently configured to be built automatically by github actions when 
a pull request on master has been successfully merged.  

## packaging version numbers

When a new package is built it will automatically check what the last version 
is in PYPI for the package and increment that number.  

Example if the version in pypi is 7.3.45, the next time the github action triggers
it will be 7.3.46.  If you want the change either the major or the minor number
set the number in packages __init__.py file, for example to increment the major
version number to 8.

... version=8.0.0 ...





Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bcdc-apitests-dev-1.0.81.tar.gz (73.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bcdc_apitests_dev-1.0.81-py3-none-any.whl (99.1 kB view details)

Uploaded Python 3

File details

Details for the file bcdc-apitests-dev-1.0.81.tar.gz.

File metadata

  • Download URL: bcdc-apitests-dev-1.0.81.tar.gz
  • Upload date:
  • Size: 73.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.3

File hashes

Hashes for bcdc-apitests-dev-1.0.81.tar.gz
Algorithm Hash digest
SHA256 0ae227fbd30d5c8cb147b74736d4c92f1e9cf4d9ad1a3e3671bf3038fb961848
MD5 e6673a4a45611d5e7a4530af772f0ea3
BLAKE2b-256 91796bb13d5ea8fbc0b4ac16b7e392426ff816a1df96304c525ef2bb90e27103

See more details on using hashes here.

File details

Details for the file bcdc_apitests_dev-1.0.81-py3-none-any.whl.

File metadata

  • Download URL: bcdc_apitests_dev-1.0.81-py3-none-any.whl
  • Upload date:
  • Size: 99.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.3

File hashes

Hashes for bcdc_apitests_dev-1.0.81-py3-none-any.whl
Algorithm Hash digest
SHA256 5ed1ad8fecd33d8258ade6a9bf6461ff836798ff9a86a3bf5a31cf2f64c5d309
MD5 bf0dd33d9a0dfb52a8c4f1414a0b6cb2
BLAKE2b-256 ad7008900699a4dd795dcf4923ead88ff828722e3e6ece6c209c4241a9ca55b4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page