您当前的位置: 首页 >  selenium

王同学在这

暂无认证

  • 0浏览

    0关注

    35博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

selenium自动化测试一一实现自动登陆音乐

王同学在这 发布时间:2022-03-21 23:55:41 ,浏览量:0

文章目录
    • 简介
    • 准备
    • 测试
    • 了解元素定位
    • 进行页面分析
    • 主要思路
    • 演示
    • 实现
    • 以下是全部代码

提示:以下是本篇文章正文内容,下面案例可供参考

简介

本章说的是运用selenium自动测试,Selenium是一个自动web测试模块!可以通过调用浏览器来进行自动化测试!用于Web应用程序测试的工具,Selenium测试直接运行在浏览器中,模拟用户操作。 在这里插入图片描述

准备

selenium进行自动化需要安装好插件!因为selenium是通过调用浏览器来进行web测试的!要配置好selenium的运行环境安装selenium模块!(可在博客中查找)

测试

成功使用selenium模块打开一个浏览器! 这里以Chrome为例。(配置完成) 使用selenium模块下的webdriver模块!来打开指定浏览器!

from selenium import webdriver
import time

# 初始化浏览器
browser = webdriver.Chrome()
try:
    browser.get('https://baidu.com')
    time.sleep(5)
finally:
    browser.close()

操作selenium打开指定浏览器及说明配置正常。 在这里插入图片描述

了解元素定位

利用元素定位可以找到加载页面中的任何对象,类似于我们查看加载的页面,并找到我们的目标信息,以便执行下一步的操作。

在这里插入图片描述

进行页面分析

首先就是打开页面看一下网页结构,好方便要知道进行哪些操作,在页面按鼠标右键检查或按F12查看Elements网页源码,上下滑动观察能知道页面的信息在子页面中,我们要想用selenium对页面进行操作就得切换回子页面中才能进行对网页的操作。

在这里插入图片描述 既然已经知道要操作子页面了,接下来我们就是按点击用户登录那里,点击勾上同意条款,点击手机号登录,再点击密码登录就能显示到下图这个页面。 在这里插入图片描述 最后就是输入自己的用户信息就可以完成登录。

主要思路

selenium实现打开浏览器, 利用元素定位的方法切换到ifarem子页面,然后再找到相对应的元素定位操作浏览器完成点击事件 (点击用户登录,点击勾上同意条款,点击手机号登录,再点击密码登录) 最后定位到账号密码输入框执行输入的操作点击登录就完成登录了。 在这里插入图片描述

演示

导入相对于的库

from selenium.webdriver.common.by import By
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.wait import WebDriverWait
import time

对网页发起请求Selenium测试直接运行在浏览器中,模拟用户操作。 在这里插入图片描述

点击用户登录要切换回父frame才能进行之下操作。send—key输入自己的信息就可以了 在这里插入图片描述

实现

在这里插入图片描述

运行结果 在这里插入图片描述

以下是全部代码
from selenium.webdriver.common.by import By
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.wait import WebDriverWait
import time

# 浏览器对象
driver = webdriver.Chrome()
# 等待
wait = WebDriverWait(driver,10)

try:
    url = 'https://music.163.com/#'

    wait = WebDriverWait(driver,10)
    driver.get(url=url)
    print('==========================开始访问===============================')
    driver.set_window_size(1300,1300)    # 设置窗口大小
    time.sleep(1)
    # 切换子页面frame 找到用户点击
    driver.switch_to.frame(driver.find_element(By.ID,'g_iframe'))
    time.sleep(1)
    mood = driver.find_element(By.XPATH,'//*[@id="index-enter-default"]')   # 用户点击
    mood.click()
    # 从子frame切换回父frame
    driver.switch_to.default_content()
    time.sleep(1)
    # 选择其他登录模式
    cat = driver.find_element(By.XPATH,'//*[@id="otherbtn"]/a')
    cat.click()
    # 同意条款
    driver.find_element(By.XPATH,'//*[@id="j-official-terms"]').click()
    time.sleep(1)
    # 手机号登录
    driver.find_element(By.LINK_TEXT,'手机号登录').click()
    time.sleep(1)
    # 用密码登录
    driver.find_element(By.LINK_TEXT,'密码登录').click()
    time.sleep(1)

    # 找到账号密码
    name = driver.find_element(By.XPATH,'//*[@id="p"]')   # 输入账号
    passwd = driver.find_element(By.XPATH,'//*[@id="pw"]')     # 输入密码
    name.send_keys('自己信息')
    passwd.send_keys('自己信息')
    # 登录
    driver.find_element(By.LINK_TEXT,'登 录').send_keys(Keys.ENTER)
    print('=========================登陆成功============================')
    time.sleep(5)
finally:
    pass

在这里插入图片描述

关注
打赏
1650950381
查看更多评论
立即登录/注册

微信扫码登录

0.0378s