Megatest

Documentation
Login
// This file is part of Megatest.
// 
//     Megatest is free software: you can redistribute it and/or modify
//     it under the terms of the GNU General Public License as published by
//     the Free Software Foundation, either version 3 of the License, or
//     (at your option) any later version.
// 
//     Megatest is distributed in the hope that it will be useful,
//     but WITHOUT ANY WARRANTY; without even the implied warranty of
//     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//     GNU General Public License for more details.
// 
//     You should have received a copy of the GNU General Public License
//     along with Megatest.  If not, see <http://www.gnu.org/licenses/>.
//
// Copyright 2006-2012, Matthew Welland.

Study Plan
----------

Megatest is an extensive program with a lot to learn. Following are some paths through the material to smooth the learning path.

Basic Concepts (suggest you pick these up on the way)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Components of automation; run, test, iteration 
* Selectors; target, runname, and testpatt

Running Testsuites or Automation
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Using the dashboard gui (recommended)
** Using the "Runs" panel.
** Using the "Run Control" panel.
** Using a test control panel
** The Right Mouse Button menu
** Debug features
*** xterm
**** pstree
**** log files; mt_copy.log, mt_launch.log
**** variables; megatest.csh, megatest.sh
**** testconfig dump, *testconfig
*** State/status buttons
*** Run, Clean, KillReq
*** ReRunClean
* Using the command line
** Getting help; megatest -h, megatest -manual
** Starting runs; megatest -run
*** Selection controls; -target, -runname and -testpatt

Writing Tests and Flows
~~~~~~~~~~~~~~~~~~~~~~~

* environment variables (table 5)
* tests/_testname_/testconfig link:megatest_manual.html#_the_testconfig_file[testconfig details]
** ezsteps and logpro section
** iteration (one test applied to many inputs), items, itemstable link:megatest_manual.html#_iteration[test iteration]
** dependencies, waiton, itemmatch, itemwait link:megatest_manual.html#_requirements_section[test requirements]
** miscellaneous; mode toplevel, runtimelim, skip on file, no file, script or on running, waiver propagation
* megatest areas
** megatest.config
** runconfigs.config
** config language features; include, shell, system, scheme, rp|realpath, getenv, get, rget, scriptinc link:megatest.html#_config_file_helpers[config file helpers]

Advanced Topics
~~~~~~~~~~~~~~~

* Removing and keeping runs selectively link:megatest_manual.html#_managing_old_runs[managing runs]
* Subruns link:megatest_manual.html#_nested_runs[nested runs]
* Config file features link:megatest_manual.html#_config_file_helpers[config file features]
* HTML output with -generate-html
* Triggers, post run, state/status
* MTLOWESTLOAD
* flexilauncher
* env delta and testconfig
* capturing test data, extracting values from logpro and using them for pass/fail
* mtutil, postgres connection, packets for cross-site/cross-user control (e.g. mcrun).

Maintenance and Troubleshooting
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* cleanup-db, database structure of Megatest 1.6x
* archiving
* homehost management
* show-runconfig
* show-config
* show with -debug 0,9
* load management