首页 > 其他分享 >Selenium测试本地web登录

Selenium测试本地web登录

时间:2023-06-12 10:46:12浏览次数:32  
标签:web 登录 webdriver Selenium driver element import find selenium

首先在py项目上配置selenium

配置好了之后上代码(末尾有完整代码)

首先导包

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.select import Select

登录界面的网址

driver.get('http://localhost:8889/xuejiguanli_war_exploded/index.jsp')

登录界面的原代码中可以看到是四个定位

      <p class="ziti">账号:<input type="text" name="zhanghao"  class="select" placeholder="学号"></p>
      <p>&nbsp;</p>
      <p class="ziti">密码:<input type="password" name="password"  class="select"></p>

      <p>&nbsp;</p>
      <p class="ziti">身份:<select id="shenfen" name="shenfen" class="select">
        <option value="">请选择您的身份</option>
        <option value="在校生">在校生</option>
        <option value="管理员">管理员</option>

      </select> </p>
      <p>&nbsp;</p>
      <button type="submit" id="submit">登录</button>

两个文本输入定位,一个下拉框定位,一个按钮定位

因此我们的测试脚本也是四个

文本定位

driver.find_element(By.NAME,'zhanghao').send_keys('juzipi')
time.sleep(1)
driver.find_element(By.NAME, 'password').send_keys('51129')
time.sleep(1)

下拉框(这里选用的是定位到文本,还有其他定位方法可以自行搜索)

nr = driver.find_element(By.ID, "shenfen")
# 实例化
select = Select(nr)
select.select_by_visible_text("管理员")
time.sleep(1)

提交按钮

button = driver.find_element(By. ID, 'submit')
button.click()

运行成功后就会打开网页,自动补充账号密码和身份,登陆成功

完整代码

import selenium
from selenium import webdriver
from  selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from selenium.webdriver.support.select import Select


import time

options = webdriver.ChromeOptions()
options.add_experimental_option('detach', True)
driver = webdriver.Chrome(options=options)
driver.implicitly_wait(10)
time.sleep(1)
driver.get('http://localhost:8889/xuejiguanli_war_exploded/index.jsp')
time.sleep(1)
driver.find_element(By.NAME,'zhanghao').send_keys('juzipi')
time.sleep(1)
driver.find_element(By.NAME, 'password').send_keys('51129')
time.sleep(1)

nr = driver.find_element(By.ID, "shenfen")
# 实例化
select = Select(nr)
select.select_by_visible_text("管理员")
time.sleep(1)

button = driver.find_element(By. ID, 'submit')

button.click()
style = driver.find_element(By.TAG_NAME,'style')
assert style !=[]

 

标签:web,登录,webdriver,Selenium,driver,element,import,find,selenium
From: https://www.cnblogs.com/rongzhang/p/17474290.html

相关文章

  • Jmeter测试本地web登录接口
    安装配置Jmeter下载下来就是一个包,我下的是5.4.3版本的 去bin目录下找到Jmeter.bat 点击运行 语言的修改问题可以去配置文件里面改,也可以下载汉化包,具体教程自己搜 首先添加线程组 添加http请求   添加查看结果树 运行 ......
  • 北京市政百姓信件分析---使用selenium爬取信件信息
    下载selenium使用管理员打开cmd'pipinstallselenium查看版本pipshowselenium下载 WebDriver驱动谷歌浏览器chromedrive:http://chromedriver.storage.googleapis.com/index.html火狐浏览器geckodriver:https://github.com/mozilla/geckodriver/releasesIE浏览器IEDr......
  • JavaWeb开发与代码的编写(十八)
    JavaWeb开发与代码的编写(十八)Filter(过滤器)Filter也称之为过滤器,它是Servlet技术中最激动人心的技术,WEB开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp,Servlet,静态图片文件或静态html文件等进行拦截,从而实现一些特殊的功能。例如实现URL级别的权限访问控......
  • 访问利用windows IIS 搭建的webdav出现500、403等代码的解决方案
    服务端在IIS中启用webDav添加创作规则(如第1张图)启用「身份验证」(如第2、3张图)防火墙设置将「在IIS中对该webDav站点设置的端口」设为「例外」或直接关闭防火墙重启该IIS站点(可选)客户端下载地址(选一即可):Windows64位https://www.123pan.com/s/FfztVv-DxNn3.html......
  • Web安全-渗透测试-信息收集01
    CDNCDN的全称是ContentDeliveryNetwork,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。但在安全测试过程中,若目标......
  • 2023安洵杯web两道WP
    WebCarelessPy在首页提示存在eval和login的路由,在download存在任意文件下载访问eval可以读取目录下的文件,知道/app/pycache/part.cpython-311.pyc路径,然后使用download下载下来,进行反编译使用在线工具进行反编译,得到session的key然后对session进行伪造登录成功一看就......
  • 软件测试|web自动化测试神器playwright教程(十五)
    前言我们在日常工作中,会经常遇到弹出警告框的问题,弹框无法绕过,必须处理才可以执行后续的测试,所以弹框处理也是我们必须掌握的一个知识。弹框通常分为3种,分别为alert,confirm,promot。alert弹框:只有信息和确定按键confirm弹框:在alert弹窗基础上增加了取消按钮prompt弹框:在confirm的基......
  • 软件测试|web自动化测试神器playwright教程(十六)
    前言在我们的日常工作中,经常会遇到文件下载的事件,如下图:我们可以看到在下载文件时会弹出一个Windows对话框,我们知道,selenium只能操作web页面,无法操作Windows对话框,使用selenium时,我们可以借助autoit等工具实现该功能。playwright则可以不借助其他工具实现文件的下载。文件下载playw......
  • web服务器一键安装脚本 EZHTTP
    EZHTTP是集成了nginx apache php mysql memcached等web服务器软件的一键安装脚本,它能自由选择安装任意的软件,自动选最优线路下载,定制容易。如何安装因为安装时间会比较久,建议安装前使用screen,screen使用方法如下:1、首先得安装screen,ubuntu使用apt-getinstallscreen,centos或r......
  • Burp Suite Professional / Community 2023.6 (macOS, Linux, Windows) - Web 应用安
    BurpSuiteProfessional/Community2023.6(macOS,Linux,Windows)-Web应用安全、测试和扫描BurpSuiteProfessional,Test,find,andexploitvulnerabilities.请访问原文链接:https://sysin.org/blog/burp-suite-pro-2023/,查看最新版。原创作品,转载请保留出处。作者......