10-17-2018 12:07:30 AM - [START] - Start action : runWithCucumberRunner
10-17-2018 12:07:31 AM - [END] - End action : runWithCucumberRunner
10-17-2018 12:07:31 AM - [FAILED] - Keyword runWithCucumberRunner was failed (Root cause: groovy.lang.MissingMethodException: No signature of method: static com.kms.katalon.core.keyword.internal.KeywordMain.stepFailed() is applicable for argument types: (java.lang.String) values: [These following reason:
[Not a file or directory: /katalon/katalon/tmp/Include/features]]
Possible solutions: stepFailed(java.lang.String, com.kms.katalon.core.model.FailureHandling), stepFailed(java.lang.String, com.kms.katalon.core.model.FailureHandling, java.lang.String), stepFailed(java.lang.String, com.kms.katalon.core.model.FailureHandling, java.lang.String, java.util.Map))
10-17-2018 12:07:31 AM - [FAILED] - Test Cases/Navigation/BDD Navigation FAILED because (of) (Stack trace: com.kms.katalon.core.exception.StepFailedException: Keyword runWithCucumberRunner was failed (Root cause: groovy.lang.MissingMethodException: No signature of method: static com.kms.katalon.core.keyword.internal.KeywordMain.stepFailed() is applicable for argument types: (java.lang.String) values: [These following reason:
[Not a file or directory: /katalon/katalon/tmp/Include/features]]
running with the following yields an error:
docker run -it \
-v /Users/aaronsua/Repos/tests_katalon/wcui:/katalon/katalon/source:ro \
-v /Users/aaronsua/Repos/tests_katalon/reports:/katalon/katalon/report \
-e KATALON_OPTS=’-browserType=“Chrome” -retry=0 -statusDelay=15 -testSuitePath=“Test Suites/TestSuite” -executionProfile=localhost’ \
registry.windsorcircle.com/docker/katalon/base/dev:latest
Test Suite executes as expected from the GUI
I edited the entrypoint shell script to copy everything from source to tmp
cp -r $KATALON_KATALON_ROOT_DIR/source/. $tmp_dir
and execute with:
docker run -it \
-v /Users/aaronsua/Repos/tests_katalon/wcui:/katalon/katalon/source:ro \
-v /Users/aaronsua/Repos/tests_katalon/reports:/katalon/katalon/report \
-v /Users/aaronsua/Repos/tests_katalon/wcui/katalon-execute.sh:/katalon/katalon/scripts/katalon-execute.sh:ro \
-e KATALON_OPTS=’-browserType=“Chrome” -retry=0 -statusDelay=15 -testSuitePath=“Test Suites/TestSuite” -executionProfile=localhost’ \
registry.windsorcircle.com/docker/katalon/base/dev:latest
as a workaround
Instead of editing the entrypoint shell script you can just add another volume to the docker command so that the tests are present in the tmp folder too.
ex:
docker run -it \
-v /Users/aaronsua/Repos/tests_katalon/wcui:/katalon/katalon/source:ro \
-v /Users/aaronsua/Repos/tests_katalon/wcui:/katalon/katalon/tmp \
-v /Users/aaronsua/Repos/tests_katalon/reports:/katalon/katalon/report \
-e
KATALON_OPTS=’-browserType=“Chrome” -retry=0 -statusDelay=15
-testSuitePath=“Test Suites/TestSuite” -executionProfile=localhost’ \
registry.windsorcircle.com/docker/katalon/base/dev:latest
Double mounting volumes like that can have unpredictable results, and for Docker for Mac causes significant performance drain.