在Web端自动化测试中,登录和退出功能是主要测试的功能之一,网站的资源访问、信息查询等功能都需要在正常登录的状态下才能正常访问。下面以测试博学谷网站的登录和退出功能为例讲解Web应用程序的自动化测试。
1.选择测试使用的浏览器
打开Pycharm,导人Selenium自动化测试脚本需要的库。定义测试使用的浏览器,可使用不同浏览器进行测试,本案例在测试时使用火狐浏览器进行测试。测试代码如下所示。
# 导人Web测试驱动库from selenium import webdriver#导人交互操作ActionChains(鼠标指针悬停、滚动、拖放等操作)from selenium.webdriver.common.action chains import ActionChains#选择需要测试的浏览器driver=webdriver.Firefox()#等待加载超时时间driver.implicitly_wait (30)# 打开博学谷主页driver.get("https://www.boxuegu.com/")
需要注意的是,使用不同浏览器测试时,需要安装测试浏览器的驱动。
2.登录和退出自动化测试
配置完成测试使用的测览器后,使用浏览器自带的开发工具查看页面属性,也可以使用Katalon Recorder工具获取网页属性信息。
打开博学谷网页,查看登录和退出元素所在位置。由于退出操作只有当鼠标指针悬停。
在【个人中心】时,在弹出的菜单中单击【退出】选项才能退出登录,因此在退出时,需要先获取【个人中心】按钮属性信息进行鼠标指针悬停操作,然后在弹出菜单中单击【退出】测试代码如下所示。
# 获取登录按钮ID进行单击操作driver.finde_lement_by_id("login-button").click()#选定账号输人框driver.find_elements_by_xpath("/html/body/div[13]/div/div/div[2]/div[1]/input")#输入账号driver.find_element.by_xpath(u"(.//*[@id='login']/div/div/div[2]/divl[]/input)").send keys('账号')#选定密码输入框driver.find_elementby_xpath("/html/body/div[13]/div/div/div[2]/div[2]/input") .click()#输人密码driver.find_elementby_xpath(u"(./html/body/div[13]/div/div/div[2]/div[2] /input)").send_keys('密码')#单击[登录]按钮driver.find_element by_xpath("/html/body/div[13]/div/div/div[2]/button").click()#定义需要查找的属性信息mouse=driver.find_element_by_id("personal")#鼠标指针悬停操作,鼠标指针指向个人中心菜单后会显示下拉菜单ActionChains(driver).move_to_element(mouse).perform()#在[个人中心]的下拉菜单中单击[退出]选项driver.find element_by_css_selector("span.sign-out").click()
在上述代码中,使用的网页属性有id、xpath、CSS Selectoro编写测试脚本有一定难度,要求测试人员熟练掌握WebDriver驱动接口脚本语言Python API,读者可以通过参考官方API手册进行测试练习以迅速熟悉Web网页测试。
Copyright © 2013-2021 河南云和数据信息技术有限公司 豫ICP备14003305号-5 ISP经营许可证:豫B-20160281