github.com/kubeshop/testkube@v1.17.23/contrib/executor/ginkgo/README.md (about) 1  2 3 # Welcome to the Testkube Ginkgo Executor 4 5 The Kubetest Ginkgo Executor is a test executor for [testkube](https://testkube.io). 6 7 # Issues and enchancements 8 9 Please visit the main Testkube repository for reporting any [issues](https://github.com/kubeshop/testkube/issues) or [discussions](https://github.com/kubeshop/testkube/discussions). 10 11 ## Details 12 13 ### Supports Ginkgo v2 Only 14 Ginkgo v1 is unsupported by this executor. 15 16 ### Supports Git Repo Testing Only 17 **Example `testkube create test` call, git by branch:** 18 19 `$ testkube create test --git-uri <URI TO A GOLANG REPO THAT CONTAINS GINKGO TESTS> --git-branch main --name ginkgo-test --type ginkgo/test --git-username <GIT USER> --git-token=<GIT TOKEN>` 20 21 **Example `testkube create test` call, git by commit id:** 22 23 `$ testkube create test --git-uri <URI TO A GOLANG REPO THAT CONTAINS GINKGO TESTS> --git-commit <GIT COMMIT ID/SHA> --name ginkgo-test --type ginkgo/test --git-username <GIT USER> --git-token=<GIT TOKEN>` 24 25 ### Parameters: 26 Pass in/override Ginkgo parameters with -v Variables. 27 * `GinkgoTestPackage`, default: `""` 28 * `GinkgoRecursive`, default: `-r` 29 * `GinkgoParallel`, default: `-p` 30 * `GinkgoParallelProcs`, default: `""`, usage: `--procs N` 31 * `GinkgoCompilers`, default: `""`, usage: `--compilers N` 32 * `GinkgoRandomize`, default: `--randomize-all` 33 * `GinkgoRandomizeSuites`, default: `--randomize-suites` 34 * `GinkgoLabelFilter`, default: `""`, usage: `--label-filter QUERY` 35 * `GinkgoFocusFilter`, default: `""`, usage: `--focus REGEXP` 36 * `GinkgoSkipFilter`, default: `""`, usage: `--skip REGEXP` 37 * `GinkgoUntilItFails`, default: `""`, usage: `--until-it-fails` 38 * `GinkgoRepeat`, default: `""`, usage: `--repeat N` 39 * `GinkgoFlakeAttempts`, default: `""`, usage: `--flake-attempts N` 40 * `GinkgoTimeout`, default: `""`, usage: `--timeout=duration` 41 * `GinkgoSkipPackage`, default: `""`, usage: `--skip-package list,of,packages` 42 * `GinkgoFailFast`, default: `""`, usage: `--fail-fast` 43 * `GinkgoKeepGoing`, default: `"--keep-going"`, usage: `--keep-going` 44 * `GinkgoFailOnPending`, default: `""`, usage: `--fail-on-pending` 45 * `GinkgoCover`, default: `""`, usage: `--cover` 46 * `GinkgoCoverProfile`, default: `""`, usage: `--coverprofile cover.profile` 47 * `GinkgoRace`, default: `""`, usage: `--race` 48 * `GinkgoTrace`, default: `"--trace"` 49 * `GinkgoJsonReport`, default: `""`, usage: `--json-report report.json` 50 * `GinkgoJunitReport`, default: `"--junit-report report.xml"` 51 * `GinkgoTeamCityReport`, default: `""`, usage: `--teamcity-report report.teamcity` 52 53 ### Pass-through args to Ginkgo: 54 Add `--args '--base-url=example.com --some-arg=value'` to `testkube run test` command. 55 56 ### Example CLI Test Execution Calls 57 * `testkube run test ginkgo-test -f` : Executes the testkube named `ginkgo-test` and will run (recursively, with -r flag) all Ginkgo tests within the repo. 58 * `testkube run test ginkgo-test -f -v GinkgoTestPackage=e2e` : Executes the testkube named `ginkgo-test` and overrides `GinkgoTestPackage` to run the `e2e` package in the repo. 59 * `testkube run test ginkgo-test -f -v GinkgoSkipPackage="--skip-package other,other2" -v GinkgoParallel=""` : Executes the testkube and skips packages named `other` and `other2`, as well as turns _off_ Parallel Execution. 60 * `testkube run test ginkgo-test -f -v GinkgoTestPackage=e2e ---args '--base-url=example.com'` : Executes the e2e test package and provies a passthrough arg named `base-url` set to `example.com`. 61 62 ### Artifacts 63 JUnit report is generated by default and needed for parsing into Testkube results. You can also optionally turn on Json report and/or TeamCity report. 64 65 Any reports generated will be archived by the executor and put into Testkube. 66 ## Architecture 67 68 - TODO add architecture diagrams 69 70 ## API 71 72 Cypress executor implements [testkube OpenAPI for executors](https://docs.testkube.io/openapi#tag/executor) (look at executor tag).