Selenium 测试框架批量注册

Selenium 测试框架

先打开cmd下载Selenium :

pip install -i https://pypi.douban.com/simple selenium

如果是用cmd 下载的:pip show selenium使用该命令是否下载成功

或者直接在pycham IDE

在项目头上引入这个架包:from selenium import webdriver

安装浏览器驱动:

我这里用的是谷歌浏览器:

就下载谷歌的驱动,要注意看自己浏览器的版本号来下载相对应的驱动

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-M3eZqIOD-1638871384371)(C:%5CUsers%5CAdministrator%5CAppData%5CRoaming%5CTypora%5Ctypora-user-images%5C1638781897156.png)]

下载完之后需要将该整个路径加入系统变量PATH中:

系统属性>环境变量>PATH>双击进去>把自己的路径加上去

我又遇到了好几次坑 :

这里我给填一下

创建一个文件然后:

driver = webdriver.Chrome()

点击运行看浏览器能不能启动起来

如果想打开百度就:

driver = webdriver.Chrome()
#打开百度
driver.get("http://baidu.com")
#关闭浏览器
driver.close()

但有时候可能刚开始会报错:找不到浏览器的驱动

解决方案:

直接在Chrome中添加该驱动路径,格式如下简单粗暴

driver = webdriver.Chrome('你下载路径')

处理完上面的这些我们就可以简单的写一下这个例子了

批量注册:

网站地址:http://tpshop-test.itheima.net

需求思路:

  • 直接打开该网站的注册页面
  • 填写手机号、验证码、密码点击注册
  • 然后加一个循环实现批量注册

打开网站的注册页面的实现:

使用http://tpshop-test.itheima.net/Home/user/reg.html可以直接打开注册界面

# 打开浏览器
driver = webdriver.Chrome()
url='http://tpshop-test.itheima.net/Home/user/reg.html'
# 打开该网站
driver.get(url)

运行到这一步点击运行就打开了该网站

然后填写信息:可以查看一下 find_element 这个方法

#通过ID标签查找定位
ID = "id"

#通过xpath标签查找定位
XPATH = "xpath"

#通过LINK_TEXT标签查找定位
LINK_TEXT = "link text"

#通过PARTIAL_LINK_TEXT标签查找定位
PARTIAL_LINK_TEXT = "partial link text"

#通过NAME标签查找定位
NAME = "name"

#通过TAG_NAME标签查找定位
TAG_NAME = "tag name"

#通过CLASS标签查找定位
CLASS_NAME = "class name"

#通过CSS_SELECTOR标签查找定位
CSS_SELECTOR = "css selector"

我们用的是定位各个元素来实现点击和输入的这里用的是name和id两个元素

# 通过id 定位搜索框的位置输入 用户名
driver.find_element(By.ID, 'username').send_keys("13456789000")
# 通过 name 定位搜索框的位置输入
driver.find_element(By.NAME, 'verify_code').send_keys("8888")
# 通过id 定位搜索框的位置输入 密码
driver.find_element(By.ID, 'password').send_keys("123456")
# 通过id 定位搜索框的位置输入 密码
driver.find_element(By.ID, 'password2').send_keys("123456")
# 通过class 定位搜索按钮的位置
driver.find_element(By.CLASS_NAME, 'J_btn_agree').click()
# 间隔2秒
time.sleep(2)
# 关闭浏览器
driver.close()

这样我们就成功注册了一个账号

现在我们根据循环来实现一下批量注册,注册完然后生成一个 .txt 文件保存我们刚刚生成的账号和密码

import time
from selenium import webdriver
from selenium.webdriver.common.by import By
# 打开浏览器
driver = webdriver.Chrome()
url='http://tpshop-test.itheima.net/Home/user/reg.html'
# 打开该网站
driver.get(url)
# 循环变量初始化
i = 1
j = 0
sum = []
# 生成账号的个数
while i<10:
    # 这个地方是改手机号格式的
    number="1340000022" + str(i)
    if (format(driver.current_url) != url):
        driver.find_element(By.LINK_TEXT,'安全退出').click()
        driver.find_element(By.LINK_TEXT,'注册').click()
        driver.refresh()
        time.sleep(3)

    # 通过id 定位搜索框的位置输入 用户名
    driver.find_element(By.ID, 'username').send_keys(number)
    sum.append(number)
    # 通过 name 定位搜索框的位置输入
    driver.find_element(By.NAME, 'verify_code').send_keys("8888")
    # 通过id 定位搜索框的位置输入 密码
    driver.find_element(By.ID, 'password').send_keys("123456")
    # 通过id 定位搜索框的位置输入 密码
    driver.find_element(By.ID, 'password2').send_keys("123456")
    # 通过class 定位搜索按钮的位置
    driver.find_element(By.CLASS_NAME, 'J_btn_agree').click()
    # 间隔2秒
    time.sleep(2)

    # 刷新界面
    driver.refresh()
    i += 1;
    j += 1;

# 结束
driver.close()

#生成一个txt文件保存这些账号
with open("username.txt","w") as f:
    f.write("用户名"+'\n')
    for sums in sum:
        f.write(sums+'\n')
    f.write("密码统一:123456")

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
unittest<em>框架</em>是Python中的一个单元测试框架,用于编写和执行测试用例。它提供了一组用于编写测试用例、组织测试用例和运行测试用例的功能。在引用中提到的基于unittest<em>框架</em>的用例实现中,测试用例是通过继承unittest.TestCase类来实现的。 unittest<em>框架</em>与其他单元测试框架相比有以下几点区别: 1. 基于类的测试用例:unittest<em>框架</em>使用面向对象的方式组织测试用例,每个测试用例都是一个继承自unittest.TestCase的类。 2. 自动化的测试用例发现:unittest<em>框架</em>可以自动发现和加载测试用例,无需手动指定每个测试用例的位置。 3. 丰富的断言方法:unittest<em>框架</em>提供了多种断言方法,用于验证测试结果是否符合预期。这些断言方法包括判断相等、不相等、大于、小于等关系,以及判断是否包含、不包含等操作。 4. 支持测试套件和测试运行器:unittest<em>框架</em>可以将多个测试用例组织为测试套件,然后使用测试运行器执行测试套件。测试运行器提供了丰富的功能,包括执行测试用例、生成测试报告等。 5. 插件化的扩展机制:unittest<em>框架</em>支持通过插件扩展其功能,可以自定义测试装置、添加测试修饰符、输出测试结果等。 总的来说,unittest<em>框架</em>是Python中一个功能强大的单元测试框架,它提供了丰富的功能和灵活的扩展机制,方便开发人员编写和执行测试用例,以确保代码的质量和稳定性。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [handles页面切换操作技巧-基于unittest框架](https://download.csdn.net/download/weixin_38659789/13747700)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [selenium中使用unittest框架批量执行测试用例,并生成HTML报告方法](https://download.csdn.net/download/weixin_38737366/14855143)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [34 UnitTest框架 - UnitTest基本使用](https://blog.csdn.net/qq_46071165/article/details/129508170)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lucky me.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值