selenium + Python 实现UI自动化测试实战(一)
selenium + Python 实现UI自动化测试实战——集成开发
1.Idea安装Python插件
1).快捷键Crtl+alt+s 打开设置页面,找到plugins
2).plugins搜索框输入Python,点击Search in repositories
3).搜索框右侧分类选择languages,找到 Python,点击安装
2.创建python项目
1).新建Python项目
2).创建py文件
3).编写自动化测试代码
from selenium import webdriver
class LoginTest:
def lognin(self):
# 定义tms链接地址
req_url = "xxx"
# 设置驱动
driver = webdriver.Chrome()
# 打开链接地址
driver.get(req_url)
# 打印当前打开页面内容
print(driver.page_source)
# 窗口最大化
driver.maximize_window()
# 设置用户名
driver.find_element_by_id("loginName").send_keys("xxx")
# 设置密码
driver.find_element_by_id("password").send_keys("xxx")
# 点击登录按钮
driver.find_element_by_id("btnLogin").click();
# print(browser.page_source)
# 等待10秒
driver.implicitly_wait(10)
# browser.switch_to.frame("root")
# driver.switch_to.window(driver.window_handles[0])
# 找到相应菜单(谷歌浏览器找到对应元素,右击copy-->xpath,能复制xpath地址)
driver.find_element_by_xpath(
"//div[@id='root']/div/div[2]/aside/div/div[2]/div/div/div/div/div/div[3]/span").click();
text = driver.find_element_by_xpath(
"//div[@id='root']/div/div[2]/aside/div/div[2]/div/div/div/div/div/div[3]/span").text
print(text)
driver.implicitly_wait(10)
# 找到下级菜单
driver.find_element_by_xpath(
"//div[@id='root']/div/div[2]/aside/div/div[2]/div[2]/div[2]/ul/li[7]/div/span").click();
print(driver.find_element_by_xpath(
"//div[@id='root']/div/div[2]/aside/div/div[2]/div[2]/div[2]/ul/li[7]/div/span").text)
driver.implicitly_wait(100)
# 切换iframe,菜单切换之后,后续操作页面如果在不同iframe下,需切换iframe
driver.switch_to.frame(driver.find_element_by_tag_name("iframe"))
driver.find_element_by_xpath("//div[@id='app']/div/div/form/div[1]/div/div/input").send_keys("BBLED160EA0DDD1A5D6")
driver.find_element_by_xpath("//div[@id='app']/div/div/form/div[10]/div/button[1]").click()
#设置断言
assert "应收" in driver.page_source
driver.implicitly_wait(30)
# driver.quit()
login = LoginTest()
login.lognin()