Releases: ovh/venom
v1.1.0-beta.3
What's Changed
- chore: Makefile - fix cross compilation by @yesnault in #509
- fix small typo by @sapk in #516
- Add ShouldTimeEqual assertion by @marcaudefroy in #506
- Fix absolute file path for gRPC TLS certs by @sarunask in #513
- fix invalid session #518 by @kevinramage in #519
- allow +json in conentType by @guoweis-outreach in #528
- Add feature to produce messages using latest schema available version by @sixstone-qq in #517
- docs(contrib): review of readfile/README.md by @s47roy in #538
- docs(contrib): typo and review of README.md by @s47roy in #544
- docs(contrib): typo and review of web/README.md by @s47roy in #543
- docs(contrib): typo and review of web/web.go by @s47roy in #542
- docs(contrib): typo and review of executors/README.md by @s47roy in #541
- docs(contrib): typo and review of exec/README.md by @s47roy in #540
- fix: step variables inheritance leak by @fsamin in #545
- fix: assertion with json number by @fsamin in #546
- handle param like charset by @guoweis-outreach in #550
- feat: add default value for var by @guoweis-outreach in #549
- chore: use go install by @yesnault in #554
- Cache executor files by @philippgille in #553
New Contributors
- @sapk made their first contribution in #516
- @guoweis-outreach made their first contribution in #528
- @s47roy made their first contribution in #538
Full Changelog: v1.1.0-beta.2...v1.1.0-beta.3
v1.1.0-beta.2
What's Changed
- feat(tests): add
range
supports by @lowlighter in #453 - feat(assertions): add logical operators by @lowlighter in #455
- fix: handle json number is assertions (#460) by @yesnault in #464
- Improve linter configuration by @fabriziomoscon in #461
- feat:
Must
assertions support by @lowlighter in #463 - feat: run testcase with assertion only by @fsamin in #468
- [redis]: Use Readline to read large value by @marcaudefroy in #471
- fix: compute stats ok/ok/skipped on json format by @fsamin in #477
- fix: interpolation lib bad µµµ replacement by @fsamin in #479
- Ensure the output file has '.xml' extension by @clement-sciascia in #466
- chore: make clean + golang 1.17 for integration tests by @fsamin in #480
- feat(executor/http): various improvements by @fsamin in #481
- fix: don't write invalid characters in report files by @fsamin in #482
- fix(executor/http): isBodyJSONSupported by @fsamin in #483
- Improvments in README by @scraly in #489
- Improve UX & DX in Venom CLI by @scraly in #491
- feat: add retry_if support on steps by @lowlighter in #490
- doc: testsuite sort on venom run by @yesnault in #474
- Upgrade Kakfa client version to 2.6.0 by @sarunask in #456
- Feat/grpc tls by @fabriziomoscon in #462
- Venom: Support for .yml & .yaml extensions by @scraly in #495
- doc: update readme with new usage messages by @scraly in #497
- feat: add *.yaml extension in venom run usage message by @scraly in #496
- Fix line numbers being duplicated by @seanlane in #504
- chore: bump interpolate lib by @yesnault in #505
- feat(ssh_executor): Sudo option by @louisquentinjoucla in #488
New Contributors
- @clement-sciascia made their first contribution in #466
- @scraly made their first contribution in #489
- @sarunask made their first contribution in #456
- @seanlane made their first contribution in #504
- @louisquentinjoucla made their first contribution in #488
Full Changelog: v1.0.0...v1.1.0-beta.2
v1.1.0-beta.1
Venom v1.1.0-beta.1
What's Changed
- feat(tests): add
range
supports by @lowlighter in #453 - feat(assertions): add logical operators by @lowlighter in #455
- fix: handle json number is assertions (#460) #464
- feat:
Must
assertions support by @lowlighter in #463
Full Changelog: v1.0.0...v1.1.0-beta.1
v1.0.1
1.0.0
Venom v1.0.0
Venom v1.0.0 is finally here!
What's new?
This release contains a lot of refactoring, bug fixes and new features since the release 0.28.0.
Full Changelog: v0.28.0...v1.0.0
Command line arguments
Simplification of the command line options:
- flags
--log
,--profiling
were deleted. The flag-v
was added. You can use-vv
or-vvv
to increase verbose. - flag
--strict
was deleted. If there is a test failure, venom will always exit with code 2. - flag
--exclude
was deleted. This can be easily replaced on command line with grep. Example:venom run $(ls *.yml|grep -v toexclude.yml)
. - flag
--parallel
was deleted. You can useparallel
software in remplacement of the flag. - flag
--no-check-variables
was deleted, venom will always check variables. - flag
--env
was deleted. You can use--var
or--var-from-file
or.venomrc
file to declare variables with value from environment variables. See https://github.com/ovh/venom/tree/v1.0.0#environment-variables. Notice that you can't use anymoreFOO=bar venom run ...
, you have now to use:VENOM_VAR_FOO=bar venom run ...
Options can be set with environment variables: VENOM_FORMAT=json venom run *.yml
is the same as venom run --format=json *.yml
.
See Readme for other flags usage.
Sort Testsuite on venom run
There is no more automatic sorting on the testsuites when you run venom run
.
venom run 01_foo.yml 02_foo.yml
will run 01 before 02.
venom run 02_foo.yml 01_foo.yml
will run 02 before 01.
if you want to sort testsuite files from with directory:
├── 01_a.yml
├── 02_b.yml
└── dira
├── 00_init.yml
├── 01_a.yml
├── 02_b.yml
└── 02_c.yml
You can use find
command to sort before running:
❯ venom run `find . -type f -name "*.yml"|sort`
• TestSuite A root (./01_a.yml)
• TestCase-a-root SUCCESS
• TestSuite B root (./02_b.yml)
• TestCase-b-root SUCCESS
• TestSuite A (./dira/00_init.yml)
• Testcase-init SUCCESS
• TestSuite A (./dira/01_a.yml)
• Testcase-a SUCCESS
• TestSuite B (./dira/02_b.yml)
• Testcase-b SUCCESS
• TestSuite B (./dira/02_c.yml)
• Testcase-c SUCCESS
Command line output
The output of venom command line was rewritten. It's much more readable with color and you can debug testsuite with a new keyword: info
. See https://github.com/ovh/venom/tree/v1.0.0#debug-your-testsuites
Test variables
If you are using variables in your testsuite, it is recommended to declare them at the vars
section of a testsuite. Then you have several options to set them. See https://github.com/ovh/venom/tree/v1.0.0#variables
Variable helpers
In this example, we will add simple quote around the .testA.myvariable
.
- name: testB
steps:
- type: exec
script: echo {{.testA.myvariable | squote}} > variable.with.simple.quote.txt
assertions:
- result.code ShouldEqual 0
See all variable helpers: https://github.com/ovh/venom/tree/v1.0.0#variable-helpers
Testsuite version
The version
attribute in a testsuite was deleted. The version
was used to control the basepath of the testsuite.
Venom now use as basepath the testsuite file, the same behaviour as version = "2"
before.
This testsuite will read the file testa.json
from the same directory as the testsuite itself.
name: Testsuite Read File
testcases:
- name: Testcase Read File
steps:
- type: readfile
path: testa.json
Testcase name
If you have to write a reference to a testcase property, note that at runtime the testcase name is handled as a slug with uppercase support.
Skip testcase
It is possible to skip testcase according to some assertions. See https://github.com/ovh/venom/tree/v1.0.0#skip-testcase
Executors
New executors:
amqp
: https://github.com/ovh/venom/tree/master/executors/amqpmqtt
https://github.com/ovh/venom/tree/master/executors/mqttodbc
. As this executor requiresunixodbc
driver, this is only available as plugin. doc aboutodbc
executor: https://github.com/ovh/venom/tree/master/executors/plugins/odbc
There is now three ways to write a venom executor: builtin
, plugin
or user-defined
.
Plugin
Venom can now use .so
plugin, the counterpart for using plugin is that you have to compile venom yourself.
.so
files are not in the venom release.
- See how to write an executor as plugin: https://github.com/ovh/venom/tree/master/executors/plugins
User-defined executors
You can define reusable testcase as executor, and call it from your testsuite files.
Doc: https://github.com/ovh/venom/tree/v1.0.0#user-defined-executors
Compile, Test
A makefile is now available to build, test, etc.
$ make build
$ make plugins
$ make help # display all make commands
Contributors
Thanks to all the contributors for making writing and running integration tests so much easier!
New Contributors
- @fabriziomoscon made their first contribution in #289
- @marema31 made their first contribution in #297
- @christophe-dufour made their first contribution in #388
- @sixstone-qq made their first contribution in #393
- @manzan46 made their first contribution in #397
- @donotnoot made their first contribution in #403
- @chris1786 made their first contribution in #404
- @SimonT90poe made their first contribution in #401
- @maxstepanov made their first contribution in #414
- @Juneezee made their first contribution in #442
- @philippgille made their first contribution in #448
- @lowlighter made their first contribution in #452
v1.0.0-rc.7
v1.0.0-rc.7
What's new?
This is a pre-release of venom 1.0.0. This release contains a lot of refactoring, bug fixes and new features since the release 0.28.0.
Command line arguments
Simplification of the command line options:
- flags
--log
,--profiling
were deleted. The flag-v
was added. You can use-vv
or-vvv
to increase verbose. - flag
--strict
was deleted. If there is a test failure, venom will always exit with code 2. - flag
--exclude
was deleted. This can be easily replaced on command line with grep. Example:venom run $(ls *.yml|grep -v toexclude.yml)
. - flag
--parallel
was deleted. You can useparallel
software in remplacement of the flag. - flag
--no-check-variables
was deleted, venom will always check variables. - flag
--env
was deleted. You can use--var
or--var-from-file
or.venomrc
file to declare variables with value from environment variables. See https://github.com/ovh/venom#environment-variables. Notice that you can't use anymoreFOO=bar venom run ...
, you have now to use:VENOM_VAR_FOO=bar venom run ...
Options can be set with environment variables: VENOM_FORMAT=json venom run *.yml
is the same as venom run --format=json *.yml
.
See Readme for other flags usage.
Command line output
The output of venom command line was rewritten. It's much more readable with color and you can debug testsuite with a new keyword: info
. See https://github.com/ovh/venom#debug-your-testsuites
Test variables
If you are using variables in your testsuite, it is recommended to declare them at the vars
section of a testsuite. Then you have several options to set them. See https://github.com/ovh/venom#variables
Variable helpers
In this example, we will add simple quote around the .testA.myvariable
.
- name: testB
steps:
- type: exec
script: echo {{.testA.myvariable | squote}} > variable.with.simple.quote.txt
assertions:
- result.code ShouldEqual 0
See all variable helpers: https://github.com/ovh/venom#variable-helpers
Testsuite version
The version
attribute in a testsuite was deleted. The version
was used to control the basepath of the testsuite.
Venom now use as basepath the testsuite file, the same behaviour as version = "2"
before.
This testsuite will read the file testa.json
from the same directory as the testsuite itself.
name: Testsuite Read File
testcases:
- name: Testcase Read File
steps:
- type: readfile
path: testa.json
Testcase name
If you have to write a reference to a testcase property, note that at runtime the testcase name is handled as a slug with uppercase support.
Skip testcase
It is possible to skip testcase according to some assertions. See https://github.com/ovh/venom#skip-testcase
Executors
New executors:
amqp
: https://github.com/ovh/venom/tree/master/executors/amqpmqtt
https://github.com/ovh/venom/tree/master/executors/mqttodbc
. As this executor requiresunixodbc
driver, this is only available as plugin. doc aboutodbc
executor: https://github.com/ovh/venom/tree/master/executors/plugins/odbc
There is now three ways to write a venom executor: builtin
, plugin
or user-defined
.
Plugin
Venom can now use .so
plugin, the counterpart for using plugin is that you have to compile venom yourself.
.so
files are not in the venom release.
- See how to write an executor as plugin: https://github.com/ovh/venom/tree/master/executors/plugins
User-defined executors
You can define reusable testcase as executor, and call it from your testsuite files.
Doc: https://github.com/ovh/venom#user-defined-executors
Compile, Test
A makefile is now available to build, test, etc.
$ make build
$ make plugins
$ make help # display all make commands
Changelog
Features
- Add system to save the html when an error occurred during the element selection (#236) (2638720), closes #236
- Apache License, Version 2.0 (#309) (87ea5cc), closes #309
- Change the way to decode json to change the way to parse big number (16a927e)
- update dependencies (#285) (95e8ecc), closes #285
- add Dockerfile (#297) (d0edc92), closes #297
- add request in HTTP executor result (#314) (cc86621), closes #314
- argument as environment variables (#323) (7b9664c), closes #323 #238 #195
- handler IS_TTY env variable to display color (#322) (3825176), closes #322
- improve -vv results (7afe6cc)
- plugins support (#311) (32f2c79), closes #311
- read venom flags from configuration file (#326) (ca30acf), closes #326
- replace enableProfiling and log-level flags (#301) (50875e7), closes #301
- skip testcase (#328) (e37fe3a), closes #328
- user executor (#325) (5ebcbd6), closes #325 #320
- doc: docker run (#306) (f656658), closes #306
- doc: info keyword (#305) (b91d80a), closes #305
- doc: prerequisite make build (#296) (de77d5a), closes #296
- executor/kafka: upgrade sarama version (#277) (259eb6b), closes #277
- executor/dbfixtures: new drivers (oracle, odbc) (7bcb95d)
- executor/kafka: Kafka Avro executor (b741e2c)
- executor/web: improve web executor documentation (a72de4f)
- executor/http: interpolate bodyfile request (#321) (6572b13), closes #321
Bug Fixes
- do not re-download if not needed (#281) (196336a), closes #281 #239
- error on no yml file (#283) (dd6047a), closes #283 #252
- don't ignore invalid yml files (#274) (36a46cd), closes #274 #234 #235
- dont read two times the testsuites (#327) (22f1c8d), closes #327
- executors documentation and remove timeHuman everywhere (410851d)
- hacking readme (40fc19d)
- integration tests (#304) (d164074), closes #304
- lint (#313) (5b5d65a), closes #313
- update go-dump dep (4df60a4)
- lint: (cebd878)
- executor/http: default assertion (#282) (8f75de3), closes #282 #249
- executor/kafka: timeout in seconds (c2b4070), closes #290
- executor/redis: dialURL and documentation (#315) (db93a36), closes #315
- executor/sql: removing odbc for now (#300) (687d77c), closes #300
Refactoring
v1.0.0-rc.6
v1.0.0-rc.6
What's new?
This is a pre-release of venom 1.0.0. This release contains a lot of refactoring, bug fixes and new features since the release 0.28.0.
Command line arguments
Simplification of the command line options:
- flags
--log
,--profiling
were deleted. The flag-v
was added. You can use-vv
or-vvv
to increase verbose. - flag
--strict
was deleted. If there is a test failure, venom will always exit with code 2. - flag
--exclude
was deleted. This can be easily replaced on command line with grep. Example:venom run $(ls *.yml|grep -v toexclude.yml)
. - flag
--parallel
was deleted. You can useparallel
software in remplacement of the flag. - flag
--no-check-variables
was deleted, venom will always check variables. - flag
--env
was deleted. You can use--var
or--var-from-file
or.venomrc
file to declare variables with value from environment variables. See https://github.com/ovh/venom#environment-variables. Notice that you can't use anymoreFOO=bar venom run ...
, you have now to use:VENOM_VAR_FOO=bar venom run ...
Options can be set with environment variables: VENOM_FORMAT=json venom run *.yml
is the same as venom run --format=json *.yml
.
See Readme for other flags usage.
Command line output
The output of venom command line was rewritten. It's much more readable with color and you can debug testsuite with a new keyword: info
. See https://github.com/ovh/venom#debug-your-testsuites
Test variables
If you are using variables in your testsuite, it is recommended to declare them at the vars
section of a testsuite. Then you have several options to set them. See https://github.com/ovh/venom#variables
Variable helpers
In this example, we will add simple quote around the .testA.myvariable
.
- name: testB
steps:
- type: exec
script: echo {{.testA.myvariable | squote}} > variable.with.simple.quote.txt
assertions:
- result.code ShouldEqual 0
See all variable helpers: https://github.com/ovh/venom#variable-helpers
Testsuite version
The version
attribute in a testsuite was deleted. The version
was used to control the basepath of the testsuite.
Venom now use as basepath the testsuite file, the same behaviour as version = "2"
before.
This testsuite will read the file testa.json
from the same directory as the testsuite itself.
name: Testsuite Read File
testcases:
- name: Testcase Read File
steps:
- type: readfile
path: testa.json
Testcase name
If you have to write a reference to a testcase property, note that at runtime the testcase name is handled as a slug with uppercase support.
Skip testcase
It is possible to skip testcase according to some assertions. See https://github.com/ovh/venom#skip-testcase
Executors
New executors:
amqp
: https://github.com/ovh/venom/tree/master/executors/amqpmqtt
https://github.com/ovh/venom/tree/master/executors/mqttodbc
. As this executor requiresunixodbc
driver, this is only available as plugin. doc aboutodbc
executor: https://github.com/ovh/venom/tree/master/executors/plugins/odbc
There is now three ways to write a venom executor: builtin
, plugin
or user-defined
.
Plugin
Venom can now use .so
plugin, the counterpart for using plugin is that you have to compile venom yourself.
.so
files are not in the venom release.
- See how to write an executor as plugin: https://github.com/ovh/venom/tree/master/executors/plugins
User-defined executors
You can define reusable testcase as executor, and call it from your testsuite files.
Doc: https://github.com/ovh/venom#user-defined-executors
Compile, Test
A makefile is now available to build, test, etc.
$ make build
$ make plugins
$ make help # display all make commands
Changelog
Features
- Add system to save the html when an error occurred during the element selection (#236) (2638720), closes #236
- Apache License, Version 2.0 (#309) (87ea5cc), closes #309
- Change the way to decode json to change the way to parse big number (16a927e)
- update dependencies (#285) (95e8ecc), closes #285
- add Dockerfile (#297) (d0edc92), closes #297
- add request in HTTP executor result (#314) (cc86621), closes #314
- argument as environment variables (#323) (7b9664c), closes #323 #238 #195
- handler IS_TTY env variable to display color (#322) (3825176), closes #322
- improve -vv results (7afe6cc)
- plugins support (#311) (32f2c79), closes #311
- read venom flags from configuration file (#326) (ca30acf), closes #326
- replace enableProfiling and log-level flags (#301) (50875e7), closes #301
- skip testcase (#328) (e37fe3a), closes #328
- user executor (#325) (5ebcbd6), closes #325 #320
- doc: docker run (#306) (f656658), closes #306
- doc: info keyword (#305) (b91d80a), closes #305
- doc: prerequisite make build (#296) (de77d5a), closes #296
- executor/kafka: upgrade sarama version (#277) (259eb6b), closes #277
- executor/dbfixtures: new drivers (oracle, odbc) (7bcb95d)
- executor/kafka: Kafka Avro executor (b741e2c)
- executor/web: improve web executor documentation (a72de4f)
- executor/http: interpolate bodyfile request (#321) (6572b13), closes #321
Bug Fixes
- do not re-download if not needed (#281) (196336a), closes #281 #239
- error on no yml file (#283) (dd6047a), closes #283 #252
- don't ignore invalid yml files (#274) (36a46cd), closes #274 #234 #235
- dont read two times the testsuites (#327) (22f1c8d), closes #327
- executors documentation and remove timeHuman everywhere (410851d)
- hacking readme (40fc19d)
- integration tests (#304) (d164074), closes #304
- lint (#313) (5b5d65a), closes #313
- update go-dump dep (4df60a4)
- lint: (cebd878)
- executor/http: default assertion (#282) (8f75de3), closes #282 #249
- executor/kafka: timeout in seconds (c2b4070), closes #290
- executor/redis: dialURL and documentation (#315) (db93a36), closes #315
- executor/sql: removing odbc for now (#300) (687d77c), closes #300
Refactoring
v1.0.0-rc.5
v1.0.0-rc.5
What's new?
This is a pre-release of venom 1.0.0. This release contains a lot of refactoring, bug fixes and new features since the release 0.28.0.
Command line arguments
Simplification of the command line options:
- flags
--log
,--profiling
were deleted. The flag-v
was added. You can use-vv
or-vvv
to increase verbose. - flag
--strict
was deleted. If there is a test failure, venom will always exit with code 2. - flag
--exclude
was deleted. This can be easily replaced on command line with grep. Example:venom run $(ls *.yml|grep -v toexclude.yml)
. - flag
--parallel
was deleted. You can useparallel
software in remplacement of the flag. - flag
--no-check-variables
was deleted, venom will always check variables. - flag
--env
was deleted. You can use--var
or--var-from-file
or.venomrc
file to declare variables with value from environment variables. See https://github.com/ovh/venom#environment-variables. Notice that you can't use anymoreFOO=bar venom run ...
, you have now to use:VENOM_VAR_FOO=bar venom run ...
Options can be set with environment variables: VENOM_FORMAT=json venom run *.yml
is the same as venom run --format=json *.yml
.
See Readme for other flags usage.
Command line output
The output of venom command line was rewritten. It's much more readable with color and you can debug testsuite with a new keyword: info
. See https://github.com/ovh/venom#debug-your-testsuites
Test variables
If you are using variables in your testsuite, it is recommended to declare them at the vars
section of a testsuite. Then you have several options to set them. See https://github.com/ovh/venom#variables
Variable helpers
In this example, we will add simple quote around the .testA.myvariable
.
- name: testB
steps:
- type: exec
script: echo {{.testA.myvariable | squote}} > variable.with.simple.quote.txt
assertions:
- result.code ShouldEqual 0
See all variable helpers: https://github.com/ovh/venom#variable-helpers
Testsuite version
The version
attribute in a testsuite was deleted. The version
was used to control the basepath of the testsuite.
Venom now use as basepath the testsuite file, the same behaviour as version = "2"
before.
This testsuite will read the file testa.json
from the same directory as the testsuite itself.
name: Testsuite Read File
testcases:
- name: Testcase Read File
steps:
- type: readfile
path: testa.json
Testcase name
If you have to write a reference to a testcase property, note that at runtime the testcase name is handled as a slug with uppercase support.
Skip testcase
It is possible to skip testcase according to some assertions. See https://github.com/ovh/venom#skip-testcase
Executors
New executors:
amqp
: https://github.com/ovh/venom/tree/master/executors/amqpmqtt
https://github.com/ovh/venom/tree/master/executors/mqttodbc
. As this executor requiresunixodbc
driver, this is only available as plugin. doc aboutodbc
executor: https://github.com/ovh/venom/tree/master/executors/plugins/odbc
There is now three ways to write a venom executor: builtin
, plugin
or user-defined
.
Plugin
Venom can now use .so
plugin, the counterpart for using plugin is that you have to compile venom yourself.
.so
files are not in the venom release.
- See how to write an executor as plugin: https://github.com/ovh/venom/tree/master/executors/plugins
User-defined executors
You can define reusable testcase as executor, and call it from your testsuite files.
Doc: https://github.com/ovh/venom#user-defined-executors
Compile, Test
A makefile is now available to build, test, etc.
$ make build
$ make plugins
$ make help # display all make commands
Changelog
Features
- Add system to save the html when an error occurred during the element selection (#236) (2638720), closes #236
- Apache License, Version 2.0 (#309) (87ea5cc), closes #309
- Change the way to decode json to change the way to parse big number (16a927e)
- update dependencies (#285) (95e8ecc), closes #285
- add Dockerfile (#297) (d0edc92), closes #297
- add request in HTTP executor result (#314) (cc86621), closes #314
- argument as environment variables (#323) (7b9664c), closes #323 #238 #195
- handler IS_TTY env variable to display color (#322) (3825176), closes #322
- improve -vv results (7afe6cc)
- plugins support (#311) (32f2c79), closes #311
- read venom flags from configuration file (#326) (ca30acf), closes #326
- replace enableProfiling and log-level flags (#301) (50875e7), closes #301
- skip testcase (#328) (e37fe3a), closes #328
- user executor (#325) (5ebcbd6), closes #325 #320
- doc: docker run (#306) (f656658), closes #306
- doc: info keyword (#305) (b91d80a), closes #305
- doc: prerequisite make build (#296) (de77d5a), closes #296
- executor/kafka: upgrade sarama version (#277) (259eb6b), closes #277
- executor/dbfixtures: new drivers (oracle, odbc) (7bcb95d)
- executor/kafka: Kafka Avro executor (b741e2c)
- executor/web: improve web executor documentation (a72de4f)
- executor/http: interpolate bodyfile request (#321) (6572b13), closes #321
Bug Fixes
- do not re-download if not needed (#281) (196336a), closes #281 #239
- error on no yml file (#283) (dd6047a), closes #283 #252
- don't ignore invalid yml files (#274) (36a46cd), closes #274 #234 #235
- dont read two times the testsuites (#327) (22f1c8d), closes #327
- executors documentation and remove timeHuman everywhere (410851d)
- hacking readme (40fc19d)
- integration tests (#304) (d164074), closes #304
- lint (#313) (5b5d65a), closes #313
- update go-dump dep (4df60a4)
- lint: (cebd878)
- executor/http: default assertion (#282) (8f75de3), closes #282 #249
- executor/kafka: timeout in seconds (c2b4070), closes #290
- executor/redis: dialURL and documentation (#315) (db93a36), closes #315
- executor/sql: removing odbc for now (#300) (687d77c), closes #300
Refactoring
v1.0.0-rc.4
v1.0.0-rc.4
What's new?
This is a pre-release of venom 1.0.0. This release contains a lot of refactoring, bug fixes and new features since the release 0.28.0.
Command line arguments
Simplification of the command line options:
- flags
--log
,--profiling
were deleted. The flag-v
was added. You can use-vv
or-vvv
to increase verbose. - flag
--strict
was deleted. If there is a test failure, venom will always exit with code 2. - flag
--exclude
was deleted. This can be easily replaced on command line with grep. Example:venom run $(ls *.yml|grep -v toexclude.yml)
. - flag
--parallel
was deleted. You can useparallel
software in remplacement of the flag. - flag
--no-check-variables
was deleted, venom will always check variables. - flag
--env
was deleted. You can use--var
or--var-from-file
or.venomrc
file to declare variables with value from environment variables. See https://github.com/ovh/venom#environment-variables. Notice that you can't use anymoreFOO=bar venom run ...
, you have now to use:VENOM_VAR_FOO=bar venom run ...
Options can be set with environment variables: VENOM_FORMAT=json venom run *.yml
is the same as venom run --format=json *.yml
.
See Readme for other flags usage.
Command line output
The output of venom command line was rewritten. It's much more readable with color and you can debug testsuite with a new keyword: info
. See https://github.com/ovh/venom#debug-your-testsuites
Test variables
If you are using variables in your testsuite, it is recommended to declare them at the vars
section of a testsuite. Then you have several options to set them. See https://github.com/ovh/venom#variables
Variable helpers
In this example, we will add simple quote around the .testA.myvariable
.
- name: testB
steps:
- type: exec
script: echo {{.testA.myvariable | squote}} > variable.with.simple.quote.txt
assertions:
- result.code ShouldEqual 0
See all variable helpers: https://github.com/ovh/venom#variable-helpers
Testsuite version
The version
attribute in a testsuite was deleted. The version
was used to control the basepath of the testsuite.
Venom now use as basepath the testsuite file, the same behaviour as version = "2"
before.
This testsuite will read the file testa.json
from the same directory as the testsuite itself.
name: Testsuite Read File
testcases:
- name: Testcase Read File
steps:
- type: readfile
path: testa.json
Testcase name
If you have to write a reference to a testcase property, note that at runtime the testcase name is handled as a slug with uppercase support.
Skip testcase
It is possible to skip testcase according to some assertions. See https://github.com/ovh/venom#skip-testcase
Executors
A new executor is available: odbc
. As this executor requires unixodbc
driver, this is only available as plugin.
- doc about
odbc
executor: https://github.com/ovh/venom/tree/master/executors/plugins/odbc
There is now three ways to write a venom executor: builtin
, plugin
or user-defined
.
Plugin
Venom can now use .so
plugin, the counterpart for using plugin is that you have to compile venom yourself.
.so
files are not in the venom release.
- See how to write an executor as plugin: https://github.com/ovh/venom/tree/master/executors/plugins
User-defined executors
You can define reusable testcase as executor, and call it from your testsuite files.
Doc: https://github.com/ovh/venom#user-defined-executors
Compile, Test
A makefile is now available to build, test, etc.
$ make build
$ make plugins
$ make help # display all make commands
Changelog
Features
- Add system to save the html when an error occurred during the element selection (#236) (2638720), closes #236
- Apache License, Version 2.0 (#309) (87ea5cc), closes #309
- Change the way to decode json to change the way to parse big number (16a927e)
- update dependencies (#285) (95e8ecc), closes #285
- add Dockerfile (#297) (d0edc92), closes #297
- add request in HTTP executor result (#314) (cc86621), closes #314
- argument as environment variables (#323) (7b9664c), closes #323 #238 #195
- handler IS_TTY env variable to display color (#322) (3825176), closes #322
- improve -vv results (7afe6cc)
- plugins support (#311) (32f2c79), closes #311
- read venom flags from configuration file (#326) (ca30acf), closes #326
- replace enableProfiling and log-level flags (#301) (50875e7), closes #301
- skip testcase (#328) (e37fe3a), closes #328
- user executor (#325) (5ebcbd6), closes #325 #320
- doc: docker run (#306) (f656658), closes #306
- doc: info keyword (#305) (b91d80a), closes #305
- doc: prerequisite make build (#296) (de77d5a), closes #296
- executor/kafka: upgrade sarama version (#277) (259eb6b), closes #277
- executor/dbfixtures: new drivers (oracle, odbc) (7bcb95d)
- executor/kafka: Kafka Avro executor (b741e2c)
- executor/web: improve web executor documentation (a72de4f)
- executor/http: interpolate bodyfile request (#321) (6572b13), closes #321
Bug Fixes
- do not re-download if not needed (#281) (196336a), closes #281 #239
- error on no yml file (#283) (dd6047a), closes #283 #252
- don't ignore invalid yml files (#274) (36a46cd), closes #274 #234 #235
- dont read two times the testsuites (#327) (22f1c8d), closes #327
- executors documentation and remove timeHuman everywhere (410851d)
- hacking readme (40fc19d)
- integration tests (#304) (d164074), closes #304
- lint (#313) (5b5d65a), closes #313
- update go-dump dep (4df60a4)
- lint: (cebd878)
- executor/http: default assertion (#282) (8f75de3), closes #282 #249
- executor/kafka: timeout in seconds (c2b4070), closes #290
- executor/redis: dialURL and documentation (#315) (db93a36), closes #315
- executor/sql: removing odbc for now (#300) (687d77c), closes #300
Refactoring
- delete --parallel flag (#299) (4a8dad7), closes #299
- executor/web: isolate dump html file (a103112)
- assertions, output, logs, and template (#286) (d711aa5), closes #286
- clean and simplify venom codebase (#298) (47441c3), closes #298
- move cli to cmd package (#308) (0c2128a), closes #308
- remove -no-check-var ...
v1.0.0-rc.3
v1.0.0-rc.3
What's new?
This is a pre-release of venom 1.0.0. This release contains a lot of refactoring, bug fixes and new features since the release 0.28.0.
Command line arguments
Simplification of the command line options:
- flags
--log
,--profiling
were deleted. The flag-v
was added. You can use-vv
or-vvv
to increase verbose. - flag
--strict
was deleted. If there is a test failure, venom will always exit with code 2. - flag
--exclude
was deleted. This can be easily replaced on command line with grep. Example:venom run $(ls *.yml|grep -v toexclude.yml)
. - flag
--parallel
was deleted. You can useparallel
software in remplacement of the flag. - flag
--no-check-variables
was deleted, venom will always check variables. - flag
--env
was deleted. You can use--var
or--var-from-file
or.venomrc
file to declare variables with value from environment variables. See https://github.com/ovh/venom#environment-variables. Notice that you can't use anymoreFOO=bar venom run ...
, you have now to use:VENOM_VAR_FOO=bar venom run ...
Options can be set with environment variables: VENOM_FORMAT=json venom run *.yml
is the same as venom run --format=json *.yml
.
See Readme for other flags usage.
Command line output
The output of venom command line was rewritten. It's much more readable with color and you can debug testsuite with a new keyword: info
. See https://github.com/ovh/venom#debug-your-testsuites
Test variables
If you are using variables in your testsuite, it is recommended to declare them at the vars
section of a testsuite. Then you have several options to set them. See https://github.com/ovh/venom#variables
Variable helpers
In this example, we will add simple quote around the .testA.myvariable
.
- name: testB
steps:
- type: exec
script: echo {{.testA.myvariable | squote}} > variable.with.simple.quote.txt
assertions:
- result.code ShouldEqual 0
See all variable helpers: https://github.com/ovh/venom#variable-helpers
Testsuite version
The version
attribute in a testsuite was deleted. The version
was used to control the basepath of the testsuite.
Venom now use as basepath the testsuite file, the same behaviour as version = "2"
before.
This testsuite will read the file testa.json
from the same directory as the testsuite itself.
name: Testsuite Read File
testcases:
- name: Testcase Read File
steps:
- type: readfile
path: testa.json
Testcase name
If you have to write a reference to a testcase property, note that at runtime the testcase name is handled as a slug with uppercase support.
Skip testcase
It is possible to skip testcase according to some assertions. See https://github.com/ovh/venom#skip-testcase
Executors
A new executor is available: odbc
. As this executor requires unixodbc
driver, this is only available as plugin.
- doc about
odbc
executor: https://github.com/ovh/venom/tree/master/executors/plugins/odbc
There is now three ways to write a venom executor: builtin
, plugin
or user-defined
.
Plugin
Venom can now use .so
plugin, the counterpart for using plugin is that you have to compile venom yourself.
.so
files are not in the venom release.
- See how to write an executor as plugin: https://github.com/ovh/venom/tree/master/executors/plugins
User-defined executors
You can define reusable testcase as executor, and call it from your testsuite files.
Doc: https://github.com/ovh/venom#user-defined-executors
Compile, Test
A makefile is now available to build, test, etc.
$ make build
$ make plugins
$ make help # display all make commands
Changelog
Features
- Add system to save the html when an error occurred during the element selection (#236) (2638720), closes #236
- Apache License, Version 2.0 (#309) (87ea5cc), closes #309
- Change the way to decode json to change the way to parse big number (16a927e)
- update dependencies (#285) (95e8ecc), closes #285
- add Dockerfile (#297) (d0edc92), closes #297
- add request in HTTP executor result (#314) (cc86621), closes #314
- argument as environment variables (#323) (7b9664c), closes #323 #238 #195
- handler IS_TTY env variable to display color (#322) (3825176), closes #322
- improve -vv results (7afe6cc)
- plugins support (#311) (32f2c79), closes #311
- read venom flags from configuration file (#326) (ca30acf), closes #326
- replace enableProfiling and log-level flags (#301) (50875e7), closes #301
- skip testcase (#328) (e37fe3a), closes #328
- user executor (#325) (5ebcbd6), closes #325 #320
- doc: docker run (#306) (f656658), closes #306
- doc: info keyword (#305) (b91d80a), closes #305
- doc: prerequisite make build (#296) (de77d5a), closes #296
- executor/kafka: upgrade sarama version (#277) (259eb6b), closes #277
- executor/dbfixtures: new drivers (oracle, odbc) (7bcb95d)
- executor/kafka: Kafka Avro executor (b741e2c)
- executor/web: improve web executor documentation (a72de4f)
- executor/http: interpolate bodyfile request (#321) (6572b13), closes #321
Bug Fixes
- do not re-download if not needed (#281) (196336a), closes #281 #239
- error on no yml file (#283) (dd6047a), closes #283 #252
- don't ignore invalid yml files (#274) (36a46cd), closes #274 #234 #235
- dont read two times the testsuites (#327) (22f1c8d), closes #327
- executors documentation and remove timeHuman everywhere (410851d)
- hacking readme (40fc19d)
- integration tests (#304) (d164074), closes #304
- lint (#313) (5b5d65a), closes #313
- update go-dump dep (4df60a4)
- lint: (cebd878)
- executor/http: default assertion (#282) (8f75de3), closes #282 #249
- executor/kafka: timeout in seconds (c2b4070), closes #290
- executor/redis: dialURL and documentation (#315) (db93a36), closes #315
- executor/sql: removing odbc for now (#300) (687d77c), closes #300
Refactoring
- delete --parallel flag (#299) (4a8dad7), closes #299
- executor/web: isolate dump html file (a103112)
- assertions, output, logs, and template (#286) (d711aa5), closes #286
- clean and simplify venom codebase (#298) (47441c3), closes #298
- move cli to cmd package (#308) (0c2128a), closes #308
- remove -no-check-var ...