scripted_tests.cfg #5

  • //
  • guest/
  • perforce_software/
  • sdp/
  • dev/
  • test/
  • bsw/
  • scripted_tests.cfg
  • View
  • Commits
  • Open Download .zip Download (6 KB)
# Test Data File for Scripted Tests.
#
# Each test is a one-line entry of the form:
#
# <TestScript>|<ExitCode>|[<Host>:]<TestLog>|<ExpectedStringRegex>|<Comments>
# 
# Where:
# <TestScript> is a script to call. It can setup arbitrarily sophisticated
# tests. The script should accept no parameters. It should display some
# indication of the scenario being setup to test.
# The value of TestScript should be of the form:
#
# test_script-<TestDesc>.sh
#
# where <TestDesc> should contain letters, numbers, and underscores, but not
# dash or other special characters. For example, it could be:
# test_script-recover_correct_ckp_1.sh.  The _1 numeric suffix can be used
# to group together a family of related tests with TestDesc values that
# vary only by the suffix.  Scripts must exist in the test directory in a
# Battle School Lab Environment, i.e. /p4/sdp/test/bsw.
#
# The <TestScript> value can also be the special value 'no_script', meaning that no
# test script is executed. This allows additional checks of logs to be done based
# on the execution of the most recent executed test.
#
# <ExitCode> is the expected exit code, which must be a whole number (integer 0 or
# greater). If the actual test exist code is not match, the test is deemed to have
# failed.  A special value of 'U' meaning Undefined can be supplied rather than a
# whole number to indicate that any exit code is accepted.  (The test may still fail
# depending on the <Output> checks).
#
# If <TestScript> is set to 'no_script', the exit code is ignored, so fill a '-'
# in for the <ExitCode> field.
#
# <TestLog> Specify the absolute path to the log containing the expected string,
# or the special value 'output' to scan the output of the command rather than
# a log file. The <TestLost> can also be of the form <Host>:<Log> to indicate
# the expected string should be checked on the specified host. For example,
# a value of syd-helix-04:/p4/1/logs/recreate_offline_db.og will check that
# log on the syd-helix-04 host.
#
# The special value 'output' cannot be used if TestScript is set to 'no_script'.
#
# <ExpectedStringRegex> is a string of text expected of the executed command in
# either the output or a given logfile. The string can be a regular expression.
#
# <Comments> are short comments for the human reviewer of the test, describing what
# is expected in the output, what is being tested, etc.

# <TestScript>|<ExitCode>|[<Host>:]<TestLog>|<ExpectedStringRegex>|<Comments>

#------------------------------------------------------------------------------
test_script-recover_correct_ckp_1.sh|0|/p4/1/logs/checkpoint.log|^Recovering from /p4/1/checkpoints/p4_1.ckp.*.gz|Serial checkpoint on commit.
no_script|-|/p4/1/logs/checkpoint.log|End p4_1 Checkpoint$|Checkpoint OK

#------------------------------------------------------------------------------
test_script-recover_correct_ckp_2.sh|0|/p4/1/logs/checkpoint.log|/p4/1/bin/p4d_1 -r /p4/1/offline_db -z -N 4 -jrp /p4/1/checkpoints/p4_1.ckp.|Checkpoint replay with -jrp on commit.
no_script|-|/p4/1/logs/checkpoint.log|^Recovering from /p4/1/checkpoints/p4_1.ckp.*\.\.\.|Replay of parallel checkpoint.
no_script|-|/p4/1/logs/checkpoint.log|End p4_1 Checkpoint$|Checkpoint OK

#------------------------------------------------------------------------------
test_script-recover_correct_ckp_3.sh|0|syd-helix-04:/p4/1/logs/request_checkpoint.log|Running: /p4/1/bin/p4_1 admin checkpoint -Z$|Serial checkpoint requested on edge.
no_script|-|syd-helix-04:/p4/1/logs/recreate_offline_db.log|Running: /p4/1/bin/p4d_1 -r /p4/1/offline_db -jr /p4/1/checkpoints.edge_syd/p4_1.edge_syd.ckp.*.gz|Load correct serial checkpoint on edge.
no_script|-|syd-helix-04:/p4/1/logs/recreate_offline_db.log|End p4_1 recreate offline db|Verify edge offline_db rebuild OK.

#------------------------------------------------------------------------------
test_script-recover_correct_ckp_4.sh|0|syd-helix-04:/p4/1/logs/request_checkpoint.log|Running: /p4/1/bin/p4_1 admin checkpoint -Z -p -m -N 4|Parallel checkpoint requested on edge.
no_script|-|syd-helix-04:/p4/1/logs/recreate_offline_db.log|Running: /p4/1/bin/p4d_1 -r /p4/1/offline_db -z -N 4 -jrp /p4/1/checkpoints.edge_syd/p4_1.edge_syd.ckp.[0-9]+$|Load correct parallel checkpoint on edge.
no_script|-|syd-helix-04:/p4/1/logs/recreate_offline_db.log|End p4_1 recreate offline db|Verify edge offline_db rebuild OK.

#------------------------------------------------------------------------------
test_script-recover_edge_1.sh|0|syd-helix-04:/p4/1/logs/recover_edge.log|Phase 1: Recover serial edge seed from commit server into offline_db|Recover edge complete with recent workspaces.
no_script|-|/p4/1/logs/edge_dump.log|Dumping to /p4/1/checkpoints/p4_1.edge_syd.seed.*.gz|Verify serial edge seed created.
no_script|-|/p4/1/logs/edge_dump.log|Edge seed checkpoint complete|Verify edge dump completed.
no_script|-|syd-helix-04:/p4/1/logs/recover_edge.log|Phase 4: Blend edge dump into offline_db|Check table blending on edge.
no_script|-|syd-helix-04:/p4/1/logs/recover_edge.log|Phase 7: Create a new edge checkpoint from offline_db|Check new edge checkpoint created.
no_script|-|syd-helix-04:/p4/1/logs/recover_edge.log|End p4_1 Recover Edge|Verify edge recovery completed.

#------------------------------------------------------------------------------
test_script-recover_edge_2.sh|0|syd-helix-04:/p4/1/logs/recover_edge.log|Phase 1: Recover parallel edge seed from commit server into offline_db|Recover edge complete with recent workspaces.
no_script|-|/p4/1/logs/edge_dump.log|Dumping to directory /p4/1/checkpoints/p4_1.edge_syd.seed.[0-9]+\.\.\.|Verify parallel edge seed created.
no_script|-|/p4/1/logs/edge_dump.log|Edge seed checkpoint complete|Verify edge dump completed.
no_script|-|syd-helix-04:/p4/1/logs/recover_edge.log|Phase 4: Blend edge dump into offline_db|Check table blending on edge.
no_script|-|syd-helix-04:/p4/1/logs/recover_edge.log|Phase 7: Create a new edge checkpoint from offline_db|Check new edge checkpoint created.
no_script|-|syd-helix-04:/p4/1/logs/recover_edge.log|End p4_1 Recover Edge|Verify edge recovery completed.
# Change User Description Committed
#17 32100 C. Thomas Tyler In p4verify.sh, adjusted exit code for '-h/-man' opertions to 2 rather than 1.

Added tests for p4verify.sh to cli_tests.cfg.

Updated scan for unreported errors in 'r' script to ignore known-harmless text
chunks like 'LOGGING:', 'NOTIFICATIONS:', and 'TIMING:'.

Fixed typo in comment in scripted_tests.cfg.
#16 31992 C. Thomas Tyler Added test for db swap with partitioned clients.
#15 31986 C. Thomas Tyler Enhanced test definition.
#14 31984 C. Thomas Tyler Added test for refresh_P4ROOT_from_offline_db.sh basic functionality.
#13 31433 C. Thomas Tyler Further refined test expectations.
#12 31432 C. Thomas Tyler Adapted tests to handle more '-v track=-1' in backup_functions.sh.
#11 31075 C. Thomas Tyler Corrected host name in test data.
#10 31043 C. Thomas Tyler Add scripted test for live checkpoint off commit (i.e.
on edge, standby).
#9 30747 C. Thomas Tyler Added Test Group concept to run_cli_tests.sh, with same meaning and
usage as in run_scripted_tests.sh. The goal is to allow running
a defined subset of tests.
#8 30742 C. Thomas Tyler Added support for specifying exit code as 'N' for non-zero.
#7 30677 C. Thomas Tyler Added 13 tests for load_checkpoint.sh.
Added 'TestGroup' field to scripted_testse.cfg.
#6 30650 C. Thomas Tyler Adapted scripted tests to tweaks in expected script output.
#5 30649 C. Thomas Tyler Added more tests for recover_edge.sh and related scripts, and improved
auditability the first test script for recover_edge.sh.
#4 30643 C. Thomas Tyler Added tests for recover_edge.sh.
#3 30626 C. Thomas Tyler Refined test harness logic and added more tests.
#2 30623 C. Thomas Tyler Added feature for scripted test to run addtional checks from an earlier
execution of a script.

Added more tests.
#1 30622 C. Thomas Tyler Added files for initial SDP BSW test suite.