Megatest

Diff
Login

Differences From Artifact [d71eb3594c]:

To Artifact [8cf3af19a7]:


283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
\end_layout

\begin_layout Standard
\begin_inset VSpace medskip
\end_inset

This document is believed to be acurate at the time of writing but as with
 any opensource project the source code itself is the final arbiter of the
 softwares behaviour.
 It is the responsibility of the end user to validate that the code will
 perform as they expect.
 The author assumes no responsibility for any inaccuracies that this document
 may contain.
 In no event will Matthew Welland be liable for direct, indirect, special,
 exemplary, incidental, or consequential damages resulting from any defect
 or omission in this document, even if advised of the possibility of such
 damages.
 
\end_layout

\begin_layout Standard
This document is a snapshot in time and the Megatest software has likely
 been changed since publication.
 This document and the product that it describes may be improved at any
 time, without notice or obligation.
 
\end_layout

\begin_layout Standard
\begin_inset Newpage newpage
\end_inset








|
<












|
|
|
|







283
284
285
286
287
288
289
290

291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
\end_layout

\begin_layout Standard
\begin_inset VSpace medskip
\end_inset

This document is believed to be acurate at the time of writing but as with
 any opensource project the source code itself is the reference.

 It is the responsibility of the end user to validate that the code will
 perform as they expect.
 The author assumes no responsibility for any inaccuracies that this document
 may contain.
 In no event will Matthew Welland be liable for direct, indirect, special,
 exemplary, incidental, or consequential damages resulting from any defect
 or omission in this document, even if advised of the possibility of such
 damages.
 
\end_layout

\begin_layout Standard
This document is a snapshot in time and Megatest software has likely changed
 since publication.
 This document and Megatest may be improved at any time, without notice
 or obligation.
 
\end_layout

\begin_layout Standard
\begin_inset Newpage newpage
\end_inset

457
458
459
460
461
462
463

464
465
466
467
468
469
470
471
472
473
474
475
476
477
478

\begin_layout Subsection
Megatest design philosophy
\end_layout

\begin_layout Standard
Megatest is intended to provide the minimum needed resources to make writing

 a suite of tests for software, design engineering or process control (via
 owlfs for example) without being specialized for any specific problem space.
 Megatest in of itself does not know what constitutes a PASS or FAIL of
 a test.
 In most cases megatest is best used in conjunction with logpro or a similar
 tool to parse, analyze and decide on the test outcome.
 A call to megatest can then be made to record the result.
 
\end_layout

\begin_layout Subsection
Megatest architecture
\end_layout

\begin_layout Standard







>
|
|




<
<







456
457
458
459
460
461
462
463
464
465
466
467
468
469


470
471
472
473
474
475
476

\begin_layout Subsection
Megatest design philosophy
\end_layout

\begin_layout Standard
Megatest is intended to provide the minimum needed resources to make writing
 a suite of tests and implementing continuous build for software, design
 engineering or process control (via owlfs for example) without being specialize
d for any specific problem space.
 Megatest in of itself does not know what constitutes a PASS or FAIL of
 a test.
 In most cases megatest is best used in conjunction with logpro or a similar
 tool to parse, analyze and decide on the test outcome.


\end_layout

\begin_layout Subsection
Megatest architecture
\end_layout

\begin_layout Standard
1673
1674
1675
1676
1677
1678
1679













1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696






1697
1698
1699
1700
1701
1702
1703
\begin_layout Section
Monitor based running
\end_layout

\begin_layout Subsection
Monitor logic
\end_layout














\begin_layout Standard
\begin_inset Graphics
	filename monitor-state-diagram.svg

\end_inset


\end_layout

\begin_layout Section
Reference
\end_layout

\begin_layout Subsection
Configuration file Syntax
\end_layout







\begin_layout Subsubsection
Sections
\end_layout

\begin_layout Standard
\begin_inset listings







>
>
>
>
>
>
>
>
>
>
>
>
>

















>
>
>
>
>
>







1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
\begin_layout Section
Monitor based running
\end_layout

\begin_layout Subsection
Monitor logic
\end_layout

\begin_layout Standard
Note: The monitor is usable but incomplete as of Megatest v1.31.
 Click on the 
\begin_inset Quotes eld
\end_inset

Monitor
\begin_inset Quotes erd
\end_inset

 button on the dashboard to start the monitor and give it a try.
\end_layout

\begin_layout Standard
\begin_inset Graphics
	filename monitor-state-diagram.svg

\end_inset


\end_layout

\begin_layout Section
Reference
\end_layout

\begin_layout Subsection
Configuration file Syntax
\end_layout

\begin_layout Standard
Note: whitespace is preserved including at the end of line.
 Ensure your entries only have whitespace at the end of line when needed
 to avoid problems.
\end_layout

\begin_layout Subsubsection
Sections
\end_layout

\begin_layout Standard
\begin_inset listings
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020

\begin_layout Subsection
megatest.config
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="9" columns="5">
<features tabularvalignment="middle" tabularwidth="80page%">
<column alignment="left" valignment="top" width="10page%">
<column alignment="left" valignment="top" width="15page%">
<column alignment="left" valignment="top" width="20page%">
<column alignment="left" valignment="top" width="6page%">
<column alignment="left" valignment="top" width="20page%">
<row>







|







2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037

\begin_layout Subsection
megatest.config
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="10" columns="5">
<features tabularvalignment="middle" tabularwidth="80page%">
<column alignment="left" valignment="top" width="10page%">
<column alignment="left" valignment="top" width="15page%">
<column alignment="left" valignment="top" width="20page%">
<column alignment="left" valignment="top" width="6page%">
<column alignment="left" valignment="top" width="20page%">
<row>
2342
2343
2344
2345
2346
2347
2348
















































2349
2350
2351
2352
2353
2354
2355
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\end_layout

















































\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text








>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
[jobgroups]
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
string of letters, numbers and underscore
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
number
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
no
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Control number of jobs allowed to concurrently run in categories.
 See [jobgroup] in testconfig
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755

\begin_layout Subsubsection
testconfig file
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="5">
<features tabularvalignment="middle" tabularwidth="80page%">
<column alignment="left" valignment="top" width="8page%">
<column alignment="left" valignment="top" width="6page%">
<column alignment="left" valignment="top" width="12page%">
<column alignment="left" valignment="top" width="6page%">
<column alignment="left" valignment="top" width="30page%">
<row>







|







2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820

\begin_layout Subsubsection
testconfig file
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="6" columns="5">
<features tabularvalignment="middle" tabularwidth="80page%">
<column alignment="left" valignment="top" width="8page%">
<column alignment="left" valignment="top" width="6page%">
<column alignment="left" valignment="top" width="12page%">
<column alignment="left" valignment="top" width="6page%">
<column alignment="left" valignment="top" width="30page%">
<row>
2892
2893
2894
2895
2896
2897
2898















































2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926


















































2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
 PASS
\end_layout

\end_inset
</cell>
</row>
<row>















































<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
[items]
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
any valid
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
list of values
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">


















































\begin_inset Text

\begin_layout Plain Layout
no
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
The test will be repeated once for each item with the variable name set
 to the value.
 If there is more than one variable then the test will be run against all
 unique combinations of the values
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>








>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|








|








|








|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>








|



|
|
|
<







2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103

3104
3105
3106
3107
3108
3109
3110
 PASS
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
jobgroup
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
[items]
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
any valid
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
list of values
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
no
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
The test will be repeated once for each item with the variable name set
 to the value.
 If there is more than one variable then the test will be run against all
 unique combinations of the values
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
[eztests]
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
any valid
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
stepname command
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
no
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Use in addition to or instead of runscript for easy implementation of steps.
 If <stepname>.logpro exists it will be applied to the <stepname>.log and
 resulting exit code will be used to determine PASS/FAIL/WARN

\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
If using logpro to asses the PASS/FAIL status of the step you specify the
 logpro file with this parameter.
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text







|







4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
If using logpro to acess the PASS/FAIL status of the step you specify the
 logpro file with this parameter.
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text