You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »


The tests are divided into several layers. 


Layer 1 - for developers that wanna run tests. 

Test for them is a folder where they define: 

1) eden-config.conf - which will replace any value for the individual test config. They may NOT provide this file, so tests will use local  config generated from eden-config.tmpl

2)scenario.txt (which is a test scenario) 

     inside scenario.sh they define something like

     tests.reboot

     tests.onboard

the list is pure relative path of the test folders based on <EDEN_ROOT>. E.g. test.reboot means we need to look for binary in <EDEN_ROOT>/tests/reboot


  Also they may define something more complex in the text script. The core thing is that they may stick to very simple list of the test


They run tests by doing: 

eden test scenario <name of the folder> 

Layer 2- for developers that wanna develop tests. 

Test for them is a folder where they define: 

1) eden-config.tmpl - which has the local config for the test including patterns. 

2) <foldername>.go - which has the method TestMain which is used for the test. There is only one method TestMain and it is only in the file <foldername>.go 

3) They may have some other go files, for example for customAssertFunction but it's not required to have them


First they build the binary by calling 

eden test build <path of the folder> 

This calls make utility and places the binary in the same folder.  


Then they run the test by calling 

eden test run <path of the folder> 


Layer 3- for developers that wanna develop something special. 

They need to have the main method TestMain and the binary <foldername> in the folder. They may have a special make file and whatever else they want. They build the test any way they want


  • No labels