zoukankan      html  css  js  c++  java
  • day10 自动化测试

     

     也可参考安装chormdriver:https://blog.csdn.net/hshan_/article/details/10053753

     实现的效果为通过chorme自动百度搜索webdribver并自动关闭

     

     元素的定位

     

    模糊

     通过定位实现自动登录的具体步骤(xpath的应用)

    先找到登录框进行输入名字:

     再输入密码:

     验证码:

     点击登录:

     等待响应,以及关闭:

     l练习1:

    利用webdriver打开百度,并且利用webdriver模拟进行下面的操作:
    1. 在百度的搜索框中输入搜索关键字“python”
    2. 点击搜索按钮
    3. 在搜索结果列表中使用xpath来定位结果的标题
    4. 打印出所有结果记录的标题文本

    现在consel中进行定位:

     具体代码:

    from selenium import webdriver
    import time
    drive=webdriver.Chrome()
    drive.get('https://www.baidu.com')
    drive.find_element('xpath',"//input[@id='kw']").send_keys('python')
    drive.find_element('xpath',"//input[@id='su']").click()
    time.sleep(2)#搜索登录
    titles=drive.find_elements('xpath',"//div[@id='content_left']/div//h3")#必须是fnid_elments因为查找多个元素
    for title in titles:
        print(title.text)
    drive.close()

     练习2:

    在页面https://www.tiebazhushou.com/index/id.html中,使用webdriver完成以下操作:
    1. 选择地址:北京市、市辖区、西城区
    2. 出生日期:1999年01月01日
    3. 选择性别:男
    4. 点击“生成”按钮
    5. 获取生成的所有姓名和身份证号记录

    from selenium import webdriver
    import time
    from selenium.webdriver.support.ui import Select
    driver=webdriver.Chrome()
    driver.get('https://www.tiebazhushou.com/index/id.html')
    Select(driver.find_element('id', 'province')).select_by_visible_text("河北省")
    Select(driver.find_element('id', 'city')).select_by_visible_text("石家庄市")
    Select(driver.find_element('id', 'county')).select_by_visible_text("市辖区")
    Select(driver.find_element('id', 'year')).select_by_visible_text('2018')
    Select(driver.find_element('id', 'month')).select_by_visible_text('11')
    Select(driver.find_element('id', 'day')).select_by_visible_text('12')
    Select(driver.find_element('id', 'sex')).select_by_visible_text('')
    driver.find_element("id","creat").click()
    tiles=driver.find_elements('xpath',"//table[@class='table table-hover table-bordered']/tbody/tr/td")
    for title in tiles:
        print(title.text)

    结果显示:

    弹框练习:

     页面有fram时(qq邮箱的网页登录)

     

     练习:

    通过我们之前讲解的定位的alert,prompt,和confirm以及iframe的操作方法,操作以下地址的对象:

    获取alert框的文本内容及点击确定按钮:
    http://www.w3school.com.cn/tiy/t.asp?f=hdom_alert

    获取confirm框弹出的文本内容,并分别点击确定和取消按钮:
    http://www.w3school.com.cn/tiy/t.asp?f=hdom_confirm

    获取prompt框弹出的文本内容,并向prompt框内输入hello, world,并获取最后显示的文字
    http://www.w3school.com.cn/tiy/t.asp?f=hdom_prompt

     第三题:

    from selenium import webdriver
    import time
    from selenium.webdriver.support.ui import Select
    driver=webdriver.Chrome()
    driver.get('http://www.w3school.com.cn/tiy/t.asp?f=hdom_prompt')
    driver.switch_to_frame(driver.find_element('id','iframeResult'))
    driver.find_element('xpath', '//input[@onclick="disp_prompt()"]').click()
    a=driver.switch_to_alert()
    a.send_keys('真TM帅啊')
    a.accept()
    content=driver.find_element('xpath','//body').text
    print(content)

    结果:

     
  • 相关阅读:
    Android TextView中的ellipsize属性
    Android 仿微信点赞和评论弹出框
    Java 数组倒序
    Android List去掉重复数据
    Android HttpClient get传递数组
    android HttpClient
    kali中的APT软件包处理工具(apt-get)、Debian软件包管理器(dpkg)、源代码压缩和Nessus安装实用指南
    安装Kali里的应用程序或软件包
    渗透测试方法论
    Kali Linux的介绍
  • 原文地址:https://www.cnblogs.com/miaobo/p/12742571.html
Copyright © 2011-2022 走看看