imagetest-qemu: Add sanity test cases for scp/shutdown in target
scp test is to check if file copying via network work or not in target. shutdown test is to check if target can be poweroff with qemu process off. Signed-off-by Jiajun Xu <jiajun.xu@intel.com>
This commit is contained in:
parent
2078af333d
commit
d64c7ae88c
|
@ -111,7 +111,7 @@ python do_qemuimagetest() {
|
|||
os.symlink(resultfile, sresultfile)
|
||||
f = open(sresultfile, "a")
|
||||
f.write("\tTest Result for %s\n" % machine)
|
||||
f.write("\tTestcase\tPASS\tFAIL\tNORESULT\n")
|
||||
f.write("\t%-15s%-15s%-15s%-15s\n" % ("Testcase", "PASS", "FAIL", "NORESULT"))
|
||||
f.close()
|
||||
|
||||
"""generate pre-defined testcase list"""
|
||||
|
|
|
@ -151,7 +151,8 @@ Test_Print_Result()
|
|||
NORESULT=1
|
||||
fi
|
||||
|
||||
echo -e "\t$1\t\t$PASS\t$FAIL\t$NORESULT" >> $TEST_RESULT/testresult.log
|
||||
# Format the output of the test result
|
||||
echo -e "$1 $PASS $FAIL $NORESULT" | awk '{printf("\t"); for(i=1;i<=NF;i++) printf("%-15s",$i); printf("\n");}' >> $TEST_RESULT/testresult.log
|
||||
}
|
||||
|
||||
# Test_Kill_Qemu to kill child pid with parent pid given
|
||||
|
@ -399,6 +400,7 @@ Test_Create_Qemu()
|
|||
|
||||
# Parse IP address of target from the qemu command line
|
||||
if [ ${up_time} -lt ${timeout} ]; then
|
||||
sleep 5
|
||||
TARGET_IPADDR=`Test_Fetch_Target_IP $PID`
|
||||
fi
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#!/bin/bash
|
||||
#
|
||||
# Boot Test Case for Sanity Test
|
||||
# The case boot up the Qemu target with `runqemu qemux86`.
|
||||
# The case boot up the Qemu target with `poky-qemu qemuxxx`.
|
||||
# Then check if qemu and qemu network is up.
|
||||
#
|
||||
# Author: Jiajun Xu <jiajun.xu@intel.com>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/bash
|
||||
# Dmesg Check Test Case for Sanity Test
|
||||
# The case boot up the Qemu target with `runqemu qemux86`.
|
||||
# The case boot up the Qemu target with `poky-qemu qemuxxx`.
|
||||
# Then check if there is any error log in dmesg.
|
||||
#
|
||||
# Author: Jiajun Xu <jiajun.xu@intel.com>
|
||||
|
|
|
@ -0,0 +1,71 @@
|
|||
#!/bin/bash
|
||||
# SCP Test Case for Sanity Test
|
||||
# The case boot up the Qemu target with `poky-qemu qemuxxx`.
|
||||
# Then check if file can be copied into target with scp command.
|
||||
#
|
||||
# Author: Jiajun Xu <jiajun.xu@intel.com>
|
||||
#
|
||||
# This file is licensed under the GNU General Public License,
|
||||
# Version 2.
|
||||
#
|
||||
|
||||
. $POKYBASE/scripts/qemuimage-testlib
|
||||
|
||||
TIMEOUT=360
|
||||
RET=1
|
||||
SPID=0
|
||||
i=0
|
||||
|
||||
# Start qemu and check its network
|
||||
Test_Create_Qemu ${TIMEOUT}
|
||||
|
||||
# If qemu network is up, check ssh service in qemu
|
||||
if [ $? -eq 0 ]; then
|
||||
Test_Info "Begin to Test SSH Service in Qemu"
|
||||
Test_SSH_UP ${TARGET_IPADDR} ${TIMEOUT}
|
||||
RET=$?
|
||||
else
|
||||
RET=1
|
||||
fi
|
||||
|
||||
# Check if file can be copied from host into target
|
||||
# For qemu target, the file is 5M
|
||||
if [ $RET -eq 0 ]; then
|
||||
echo $QEMUARCH | grep -q "qemu"
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
dd if=/dev/zero of=${TEST_TMP}/scp_test_file bs=512k count=10
|
||||
Test_SCP ${TARGET_IPADDR} ${TEST_TMP}/scp_test_file /home/root &
|
||||
SPID=$!
|
||||
fi
|
||||
|
||||
# Check if scp finished or not
|
||||
while [ $i -lt $TIMEOUT ]
|
||||
do
|
||||
ps -fp $SPID > /dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
RET=0
|
||||
break
|
||||
fi
|
||||
i=$((i+5))
|
||||
sleep 5
|
||||
done
|
||||
|
||||
# Kill scp process if scp is not finished in time
|
||||
if [ $i -ge $TIMEOUT ]; then
|
||||
RET=1
|
||||
kill $SPID
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ${RET} -eq 0 ]; then
|
||||
Test_Info "SCP Test PASS"
|
||||
Test_Kill_Qemu
|
||||
Test_Print_Result "SCP" 0
|
||||
exit 0
|
||||
else
|
||||
Test_Info "SCP Test FAIL"
|
||||
Test_Kill_Qemu
|
||||
Test_Print_Result "SCP" 1
|
||||
exit 1
|
||||
fi
|
|
@ -0,0 +1,70 @@
|
|||
#!/bin/bash
|
||||
# Shutdown Test Case for Sanity Test
|
||||
# The case boot up the Qemu target with `poky-qemu qemuxxx`.
|
||||
# Then check if target can shutdown
|
||||
# For qemux86/x86-64, we use command "poweroff" for target shutdown
|
||||
# For non-x86 targets, we use command "reboot" for target shutdown
|
||||
#
|
||||
# Author: Jiajun Xu <jiajun.xu@intel.com>
|
||||
#
|
||||
# This file is licensed under the GNU General Public License,
|
||||
# Version 2.
|
||||
#
|
||||
|
||||
. $POKYBASE/scripts/qemuimage-testlib
|
||||
|
||||
TIMEOUT=360
|
||||
RET=1
|
||||
i=0
|
||||
|
||||
# Start qemu and check its network
|
||||
Test_Create_Qemu ${TIMEOUT}
|
||||
|
||||
# If qemu network is up, check ssh service in qemu
|
||||
if [ $? -eq 0 ]; then
|
||||
Test_Info "Begin to Test SSH Service in Qemu"
|
||||
Test_SSH_UP ${TARGET_IPADDR} ${TIMEOUT}
|
||||
RET=$?
|
||||
else
|
||||
RET=1
|
||||
fi
|
||||
|
||||
# Check if target can shutdown
|
||||
if [ $RET -eq 0 ]; then
|
||||
echo $QEMUARCH | grep -q "qemux86"
|
||||
|
||||
# For qemux86/x86-64, command "poweroff" is used
|
||||
# For non x86 qemu targets, command "reboot" is used because of BUG #100
|
||||
if [ $? -eq 0 ]; then
|
||||
Test_SSH ${TARGET_IPADDR} "/sbin/poweroff"
|
||||
else
|
||||
Test_SSH ${TARGET_IPADDR} "/sbin/reboot"
|
||||
fi
|
||||
|
||||
# If qemu start up process ends up, it means shutdown completes
|
||||
while [ $i -lt $TIMEOUT ]
|
||||
do
|
||||
ps -fp $PID > /dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
RET=0
|
||||
break
|
||||
fi
|
||||
i=$((i+5))
|
||||
sleep 5
|
||||
done
|
||||
|
||||
if [ $i -ge $TIMEOUT ]; then
|
||||
RET=1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ${RET} -eq 0 ]; then
|
||||
Test_Info "Shutdown Test PASS"
|
||||
Test_Print_Result "shutdown" 0
|
||||
exit 0
|
||||
else
|
||||
Test_Info "Shutdown Test FAIL"
|
||||
Test_Kill_Qemu
|
||||
Test_Print_Result "shutdown" 1
|
||||
exit 1
|
||||
fi
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/bash
|
||||
# SSH Test Case for Sanity Test
|
||||
# The case boot up the Qemu target with `runqemu qemux86`.
|
||||
# The case boot up the Qemu target with `poky-qemu qemuxxx`.
|
||||
# Then check if ssh service in qemu is up.
|
||||
#
|
||||
# Author: Jiajun Xu <jiajun.xu@intel.com>
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
sanity boot
|
||||
sanity ssh
|
||||
sanity scp
|
||||
sanity dmesg
|
||||
sanity shutdown
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
sanity boot
|
||||
sanity ssh
|
||||
sanity scp
|
||||
sanity dmesg
|
||||
sanity shutdown
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
sanity boot
|
||||
sanity ssh
|
||||
sanity scp
|
||||
sanity dmesg
|
||||
sanity shutdown
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
sanity boot
|
||||
sanity ssh
|
||||
sanity scp
|
||||
sanity dmesg
|
||||
sanity shutdown
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
sanity boot
|
||||
sanity ssh
|
||||
sanity scp
|
||||
sanity dmesg
|
||||
sanity shutdown
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
sanity boot
|
||||
sanity ssh
|
||||
sanity scp
|
||||
sanity dmesg
|
||||
sanity shutdown
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
sanity boot
|
|
@ -0,0 +1,5 @@
|
|||
sanity boot
|
||||
sanity ssh
|
||||
sanity scp
|
||||
sanity dmesg
|
||||
sanity shutdown
|
|
@ -0,0 +1,5 @@
|
|||
sanity boot
|
||||
sanity ssh
|
||||
sanity scp
|
||||
sanity dmesg
|
||||
sanity shutdown
|
|
@ -1,3 +1,5 @@
|
|||
sanity boot
|
||||
sanity ssh
|
||||
sanity scp
|
||||
sanity dmesg
|
||||
sanity shutdown
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
sanity boot
|
||||
sanity ssh
|
||||
sanity scp
|
||||
sanity dmesg
|
||||
sanity shutdown
|
||||
|
|
Loading…
Reference in New Issue