| This is a brief outline of the major test categories covered by xm-test.  Let's talk tomorrow (I may be a few minutes late) about which of these apply to the providers.  I took the top few lines of the first available test from each directory (category) so we could have a basic idea of what each category does.  If there were comments, I included them, if not, then I took what I could.  Most directories have more than one test, but for the initial discussion this should suffice. Luke
 --------- ./help/01_help_basic_pos.py
status, output = traceCommand("xm help")
 --------- ./info/01_info_basic_pos.py
status, output = traceCommand("xm info")
 --------- ./list/01_list_basic_pos.py
status, output = traceCommand("xm list")
 --------- ./save/01_save_basic_pos.py
SKIP("Save currently not supported for HVM domains")
 --------- ./sedf/01_sedf_period_slice_pos.py
status, output = traceCommand("xm sched-sedf %s" %(domain.getName()))
 --------- ./vtpm/01_vtpm-list_pos.py
# Positive Test: create domain with virtual TPM attached at build time,verify list
 --------- ./block-create/01_block_attach_device_pos.py
SKIP("Block-attach not supported for HVM domains")
 --------- ./console/01_console_badopt_neg.py
# Test console command with non existent option in the command line. Verify fail.
 --------- ./destroy/01_destroy_basic_pos.py
# destroy domain - positive test
 --------- ./restore/01_restore_basic_pos.py
# Save a domain and attempt to restore it
 --------- ./dmesg/01_dmesg_basic_pos.py
status, output = traceCommand("xm dmesg")
 --------- ./domid/01_domid_basic_pos.py
status, output = traceCommand("xm domid Domain-0")
 --------- ./pause/01_pause_basic_pos.py
# Tests for xm pause
 # 1) Create domain, verify it's up with console
 # 2) pause the domain
 # 3) verify it's paused by failure to connect console
 --------- ./sysrq/01_sysrq_basic_neg.py
# Check to make sure an invalid sysrq is handled appropriately
 --------- ./domname/01_domname_basic_pos.py
status, output = traceCommand("xm domname 0")
 --------- ./vcpu-pin/01_vcpu-pin_basic_pos.py
# 1) Make sure we have a multi cpu system
 # 2) Create a test domain and pin its VCPU0 to CPU 0 and then 1
 --------- ./shutdown/01_shutdown_basic_pos.py
# Test for xm shutdown
 # 1) Create domain, verify it's up with console
 # 2) shut down the domain, verify it's down
 --------- ./block-integrity/01_block_device_read_verify.py
# This test initialises a ram disk in dom0 with data from /dev/urandom and
 # then imports the ram disk device as a physical device into a domU. The md5
 # checksum of the data in the ramdisk is calculated in dom0 and also
 # calculated by the domU reading the data through the blk frontend and
 # backend drivers.  The test succeeds if the checksums match indicating that
 # the domU successfully read all the correct data from the device.
 --------- ./block-destroy/01_block-destroy_btblock_pos.py
SKIP("Block-detach not supported for HVM domains")
 --------- ./enforce_dom0_cpus/01_enforce_dom0_cpus_basic_pos.py
# 1) Make sure we have a multi cpu system and dom0 has at
 #    least 2 vcpus online.
 # 2) clone standard config (/etc/xen/xend-config.sxp)
 # 3) modify clone with enforce_dom0_cpus=X
 # 4) restart xend with modified config
 # 5) check /proc/cpuinfo for cpu count
 # 6) check xm info 'VCPUs' field to see that only 'enforce_dom0_cpus'
 #    number of cpus are online in dom0
 # 7) Restore initial dom0 vcpu state
 # 8) Restart xend with default config
 --------- ./migrate/01_migrate_localhost_pos.py
# Tests for xm migrate
 # 1) Create domain, verify it's up with console
 # 2) live migrate the domain to localhost
 # 3) verify it's migrated, see that it has a new domain ID
 # 4) verify it's still working properly by running a command on it
 --------- ./vcpu-disable/01_vcpu-disable_basic_pos.py
# 1) Make sure we have a multi cpu system
 # 2) Create a test domain with 2 VCPUs
 # 3) Verify that both VCPUs are alive
 # 4) Disable DOM VCPU1 by setting the VCPU count to 1
 # 5) Assert that the VCPU has been disabled
 # 6) Enable DOM VCPU1 (restore VCPU count to 2)
 # 7) Assert that the VCPUs are both alive again
 --------- ./create/01_create_basic_pos.py
# Create a domain (default XmTestDomain, with our ramdisk), Start it
 --------- ./_sanity/01_domu_proc.py
# Test that the library and ramdisk are working to the point
 # that we can start a DomU and read /proc
 --------- ./memmax/01_memmax_badparm_neg.py
status, output = traceCommand("xm mem-max")
 --------- ./memset/01_memset_basic_pos.py
## 1) Test for xm mem-set
 ##      create domain,
 ##      verify domain and ls output,
 ##      mem-set in dom0,
 ##      verify with xm list memory change external,
 ##      verify with xm list memory change internal,
 --------- ./block-list/01_block-list_pos.py
# Positive Test: create domain with block attached at build time, verify list
 --------- ./reboot/01_reboot_basic_pos.py
status, output = traceCommand("xm reboot %s" % domain.getName())
 --------- ./unpause/01_unpause_basic_pos.py
# Tests for xm unpause
 # 1) Create domain, verify it's up with console
 # 2) randomly pause and unpause the domain
 # 3) unpause it one last time
 # 4) verify it's still alive with console
 --------- ./security-acm/01_security-acm_basic.py
# A couple of simple tests that test ACM security extensions
 # for the xm tool. The following xm subcommands are tested:
 #
 # - makepolicy
 # - labels
 # - rmlabel
 # - addlabel
 # - getlabel
 # - resources
 --------- ./network/02_network_local_ping_pos.py
# Ping tests on local interfaces.
 #  - creates a single guest domain
 #  - sets up a single NIC
 #  - conducts ping tests to the local loopback and IP address.
 --------- ./network-attach/01_network_attach_pos.py
SKIP("Network-attach not supported for HVM domains")
 --------- ./sched-credit/01_sched_credit_weight_cap_pos.py
# Sched-credit tests modified from SEDF tests
 
 _______________________________________________
Xen-cim mailing list
Xen-cim@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-cim
 |