未验证 提交 491c88ab 编写于 作者: X Xu Han 提交者: GitHub

Merge pull request #2092 from ybduan/seabios_basic

seabios_basic: optimize testing procedure
...@@ -2,7 +2,6 @@ import re ...@@ -2,7 +2,6 @@ import re
import logging import logging
from virttest import error_context from virttest import error_context
from virttest import utils_misc from virttest import utils_misc
...@@ -11,7 +10,7 @@ def run(test, params, env): ...@@ -11,7 +10,7 @@ def run(test, params, env):
""" """
KVM Seabios test: KVM Seabios test:
1) Start guest with sga bios 1) Start guest with sga bios
2) Check the sgb bios messages(optional) 2) Check the sga bios messages(optional)
3) Restart the vm, verify it's reset(optional) 3) Restart the vm, verify it's reset(optional)
4) Display and check the boot menu order 4) Display and check the boot menu order
5) Start guest from the specified boot entry 5) Start guest from the specified boot entry
...@@ -42,7 +41,7 @@ def run(test, params, env): ...@@ -42,7 +41,7 @@ def run(test, params, env):
vm.create() vm.create()
timeout = float(params.get("login_timeout", 240)) timeout = float(params.get("login_timeout", 240))
boot_menu_key = params.get("boot_menu_key", 'f12') boot_menu_key = params.get("boot_menu_key", 'esc')
restart_key = params.get("restart_key") restart_key = params.get("restart_key")
boot_menu_hint = params.get("boot_menu_hint") boot_menu_hint = params.get("boot_menu_hint")
boot_device = params.get("boot_device", "") boot_device = params.get("boot_device", "")
...@@ -67,25 +66,23 @@ def run(test, params, env): ...@@ -67,25 +66,23 @@ def run(test, params, env):
if restart_key: if restart_key:
error_context.context("Restart vm and check it's ok", logging.info) error_context.context("Restart vm and check it's ok", logging.info)
seabios_text = get_output(seabios_session) seabios_text = get_output(seabios_session)
headline = seabios_text.split("\n")[0] + "\n" headline = seabios_text.split("\n")[0] + "\n"
headline_count = seabios_text.count(headline) headline_count = seabios_text.count(headline)
vm.send_key(restart_key) vm.send_key(restart_key)
if not (boot_menu_hint and utils_misc.wait_for(boot_menu, timeout, 1)):
test.fail("Could not get boot menu message after rebooting")
# Send boot menu key in monitor.
vm.send_key(boot_menu_key)
def reboot_check(): def reboot_check():
return get_output(seabios_session).count(headline) > headline_count return get_output(seabios_session).count(headline) > headline_count
if not utils_misc.wait_for(reboot_check, timeout, 1): if not utils_misc.wait_for(reboot_check, timeout, 1):
test.fail("Could not restart the vm") test.fail("Could not restart the vm")
utils_misc.wait_for(boot_menu_check, timeout, 1) if not (boot_menu_hint and utils_misc.wait_for(boot_menu_check, timeout, 1)):
test.fail("Could not get boot menu message after rebooting")
# Send boot menu key in monitor.
vm.send_key(boot_menu_key)
error_context.context("Display and check the boot menu order", logging.info) error_context.context("Display and check the boot menu order", logging.info)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册