python3+selenium通过xpath实现数据驱动登录

1说明

       打开谷歌浏览器,然后输入网址192.168.20.112:8092,输入账号、密码、验证码,然后登陆,查看网址是否能正常登陆,如果能够正常登陆,说明网址是正确
      登陆前的页面样式:
python3+selenium通过xpath实现数据驱动登录_第1张图片
      登陆后的页面样式:
在这里插入图片描述

2打开F12,获取对应的xpath

元素 xpath值
账号 /html/body/div[1]/div/div/div[2]/div/div/div/div/div[1]/div/form/div[1]/div/input
密码 /html/body/div[1]/div/div/div[2]/div/div/div/div/div[1]/div/form/div[2]/div/input
验证码 /html/body/div[1]/div/div/div[2]/div/div/div/div/div[1]/div/form/div[3]/div[1]/input
登陆按钮 /html/body/div[1]/div/div/div[2]/div/div/div/div/div[1]/div/form/div[4]/button
登陆后显示的真实姓名 /html/body/div[1]/ul[2]/li[3]/a/div

      这里以账号作为一个例子获取对应的xpath
      其余的元素以下面的例子作为范文:
python3+selenium通过xpath实现数据驱动登录_第2张图片
python3+selenium通过xpath实现数据驱动登录_第3张图片

3打开pycharm,编写数据驱动的脚本

import time

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
# 创建 WebDriver 对象,指明使用chrome浏览器驱动
from selenium.webdriver.common.by import By

# 加载谷歌浏览器驱动
wd = webdriver.Chrome(service=Service(r'F:\work\python\python_location2\chromedriver.exe'))

# 调用WebDriver 对象的get方法 可以让浏览器打开指定网址
wd.get('http://192.168.20.112:8092')

# 等5秒
time.sleep(5)

# 全屏显示
wd.maximize_window()

# 设置账号
# wd.find_element(By.ID, 'userName').send_keys('delete')
# 设置密码
# wd.find_element(By.ID, 'password').send_keys('456789')
# 设置验证码
# wd.find_element(By.NAME, 'code').send_keys('1111')
# 点击提交按钮
# wd.find_element(By.CSS_SELECTOR, 'button[type=submit]').click()
# 通过xpath获取账号输入框位置
userName = wd.find_element(By.XPATH,
                           '/html/body/div[1]/div/div/div[2]/div/div/div/div/div[1]/div/form/div[1]/div/input')
# 通过xpath获取密码输入框位置
password = wd.find_element(By.XPATH,
                           '/html/body/div[1]/div/div/div[2]/div/div/div/div/div[1]/div/form/div[2]/div/input')
# 通过xpath获取验证码的输入框位置
code = wd.find_element(By.XPATH, '/html/body/div[1]/div/div/div[2]/div/div/div/div/div[1]/div/form/div[3]/div[1]/input')
# 通过xpath获取按钮的位置
button = wd.find_element(By.XPATH, '/html/body/div[1]/div/div/div[2]/div/div/div/div/div[1]/div/form/div[4]/button')

# 账号输入框输入账号
userName.send_keys('delete')
# 密码输入框中输入密码
password.send_keys('456789')
# 验证码输入框中输入验证码
code.send_keys('123')
# 点击按钮
button.click()

# 等5秒
time.sleep(5)
# 验证是否登陆成功
login_success = wd.find_element(By.XPATH, '/html/body/div[1]/ul[2]/li[3]/a/div').text
print(login_success)
# 断言验证真实姓名
assert  login_success == 'delete1'

# 等5秒
time.sleep(3)

# 关闭页面
wd.quit()

4启动后查看运行结果

运行正常,可以正常登陆,并且根据断言结果关闭页面
python3+selenium通过xpath实现数据驱动登录_第4张图片

5目录

https://blog.csdn.net/baidu_28767649/article/details/124835467

你可能感兴趣的:(python3,selenium,python,测试工具)