前面学的都是基础知识,本篇将进入实战练习
以百度“搜索设置”为对象进行测试用例的写作:
百度的搜索设置在首页的“设置”里面,鼠标悬停之后即可显示,如下图红框位置:
测试目标是,修改每页的显示条数为50条(默认为10条)
from selenium import webdriverfrom selenium.webdriver.common.action_chains import ActionChainsimport unittest,timepath='http://www.baidu.com'driver=webdriver.Firefox()driver.implicitly_wait(30)driver.get(path)element = driver.find_element_by_xpath('/html/body/div[1]/div[1]/div/div[3]/a[8]')#把鼠标移动到设置上ActionChains(driver).move_to_element(element).perform()time.sleep(2)#获取下拉菜单中的“搜索设置”driver.find_element_by_css_selector('a.setpref').click()#选择每页为50条的valuenr = driver.find_element_by_id('nr')Select(nr).select_by_value('50')#这里也可以直接写成如下形式#driver.find_element_by_id('nr').find_element_by_xpath("//option[@value='50']").click()time.sleep(2)#保存设置driver.find_element_by_class_name('prefpanelgo').click()time.sleep(2)driver.switch_to.alert.accept()time.sleep(2)driver.quit()
这样就设置成了每页50条搜索结果了。
这里主要有俩个练习点:
1、ActionChains的使用
2、Select的使用