Sigma Test Framework V0.1.0

by Giulio Scattolin

Version 1 (December 6, 2019)

Download (15 downloads)

Sigma is a simple and effective testing framework for Automate.

As every testing framework it has been built to help developers to ensure their flows have always the expected behaviour.

In Sigma a ๐˜ต๐˜ฆ๐˜ด๐˜ต begins with a Flow Beginning block and it ends sending a brodcast message.

Also, ๐˜ต๐˜ฆ๐˜ด๐˜ต ๐˜ด๐˜ถ๐˜ช๐˜ต๐˜ฆ๐˜ด exist: a suite is a group of tests which provides a way to report a bunch of tests at once.

๐˜ž๐˜ฉ๐˜ข๐˜ต ๐˜ฅ๐˜ฐ ๐˜บ๐˜ฐ๐˜ถ ๐˜ต๐˜ฉ๐˜ช๐˜ฏ๐˜ฌ ๐˜ข๐˜ฃ๐˜ฐ๐˜ถ๐˜ต ๐˜ช๐˜ต? ๐˜ˆ๐˜ฏ๐˜บ ๐˜ง๐˜ฆ๐˜ฆ๐˜ฅ๐˜ฃ๐˜ข๐˜ค๐˜ฌ ๐˜ช๐˜ด ๐˜ท๐˜ฆ๐˜ณ๐˜บ ๐˜ข๐˜ฑ๐˜ฑ๐˜ณ๐˜ฆ๐˜ค๐˜ช๐˜ข๐˜ต๐˜ฆ๐˜ฅ! ๐˜›๐˜ฉ๐˜ข๐˜ฏ๐˜ฌ ๐˜บ๐˜ฐ๐˜ถ!

FEATURES
- Every test has 5 seconds to run or it will fail for taking too much time. This can be customized per test providing a "timeout" field when it is enqueued.
- Tests can be parametrized providing a "payload" field when they are enqueued.

STARTING POINTS
- "โš™๏ธ Start the engine" is required for the framework to run correctly. It handles incoming sigma.action.ENQUEUE for sigma/test and sigma/suite. Every broadcast is always appended to the log.
- "โ„น๏ธ Enable logging" will log the results of every test and suite run.
- "๐Ÿ“„ Learn more" explains a bit more the inner concepts of the framework.
- "๐Ÿงช Try me!" says it all, it shows the features of the framework providing common blocks to copy and reuse.

REQUIREMENTS
- Having more than 30 blocks it needs the Premium version of Automate.

NEXT
- Implement an example of a parametrized tests.
- Implement an example of a test having custom timeout time.

BUGS
- None at the moment.

๐˜ˆ๐˜ฏ๐˜บ ๐˜ด๐˜ถ๐˜จ๐˜จ๐˜ฆ๐˜ด๐˜ต๐˜ช๐˜ฐ๐˜ฏ๐˜ด? ๐˜๐˜ฆ๐˜ข๐˜ต๐˜ถ๐˜ณ๐˜ฆ ๐˜ณ๐˜ฆ๐˜ฒ๐˜ถ๐˜ฆ๐˜ด๐˜ต๐˜ด? ๐˜™๐˜ฆ๐˜ข๐˜ค๐˜ฉ ๐˜ฎ๐˜ฆ ๐˜ข๐˜ต https://www.reddit.com/u/giulioscattolin ๐˜ฐ๐˜ณ ๐˜ญ๐˜ฆ๐˜ข๐˜ท๐˜ฆ ๐˜ข ๐˜ณ๐˜ฆ๐˜ท๐˜ช๐˜ฆ๐˜ธ ๐˜ฃ๐˜ฆ๐˜ญ๐˜ฐ๐˜ธ!

CHANGELOG
V0.1.0 2019-12-06 โ€ข Version 1