github.com/kubeshop/testkube@v1.17.23/contrib/executor/ginkgo/README.md (about)

     1  ![Testkube Logo](https://raw.githubusercontent.com/kubeshop/testkube/main/assets/testkube-color-gray.png)
     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).