美文网首页
selenium01-第一个简单自动化脚本

selenium01-第一个简单自动化脚本

作者: 筱媛媛 | 来源:发表于2019-06-11 18:54 被阅读0次

    Selenium是一个主要用于Web应用程序自动化测试工具,可以直接运行在浏览器中,就像真正的用户在操作一样。本篇主要讲的是利用selenium实现第一个简单自动化脚本的一些基础知识。希望感兴趣的小伙伴可以坚持看下去同时欢迎提出宝贵的意见让我们一起进步!

    01:安装selenium模块

    pip install selenium

    02:导入浏览器驱动chromedriver

    1)不同的浏览器对应不同的webdriver,同一浏览器的不同版本也与webdriver版本一一对应,查找自己浏览器版本在网上下载相应的浏览器驱动。在这里就不过多叙述,我用的是谷歌浏览器,版本是74,下载对应的版本是v2.46。

    2)下载网址:http://npm.taobao.org/mirrors/chromedriver/

    3)安装步骤:https://jingyan.baidu.com/article/f7ff0bfcdd89ed2e27bb1379.html

    03:Web测试的重点

    1)模拟整个客户端给服务端发送请求

    2)模拟人操作浏览器,通过浏览器来发送请求给服务器(selenium)

    04:Selenium包含哪些组件

    1)Selenium1:seleniumRC(相当于代理服务器),seleniumCore(控制浏览器行为的JS代码)

    2)Selenium2:整合了seleniumRC,用webdriver来替代了他的功能

    3)Selenium3: 升级了webdriver的实现,调用方式仍然和2相同,最新Selenium版本的核心是webdriver

    selenium组件.jpg
    05:Webdriver的工作原理

    1)Webdriver直接驱动浏览器来模拟一些人的操作,如点击按钮、输入字符串等。

    2)我们的测试代码是通过发送命令给Webdriver完成这些操作,虽然不同的浏览器有不同的驱动,但是我们调用的代码API都是一样的

    06:通过webdriver自动化操作浏览器

    1)基本操作:

    ①启动浏览器:driver = webdriver.Chrome()

    ②打开指定网址:driver.get('xxx')

    ③通过id寻找元素:driver.find_element_by_id('kw')

    ④输入字符:driver.find_element_by_id('kw').send_keys()

    ⑤点击按钮:driver.find_element_by_id('kw').click()

    ⑥退出:driver.quit()

    2)注意事项:

    导入第三方库的时候需要注意:项目的文件夹名称不能为selenium,否则无法导入webdriver

    调用get方法会打开浏览器并访问到指定的网址,注意:http://不能漏写

    根据ID查找元素的方法,不能写成find_elements_by_id

    from selenium import webdriver
    import  time
    
    #Chrome首字母需要大写。未配置环境变量需要写完整路径
    driver = webdriver.Chrome(r"E:\chromedriver\chromedriver.exe")
    #打开浏览器:get方法打开指定网址
    driver.get('http://www.baidu.com')
    #操作浏览器页面:html元素
    time.sleep(1)#等待1s
    #通过ID来寻找元素:返回一个表示该元素的WebElement对象
    ele=driver.find_element_by_id('kw')
    #操作元素:输入字符(send_keys)
    ele.send_keys('python百度百科')
    # 找到搜索按钮
    button=driver.find_element_by_id('su')
    #点击按钮(click)
    button.click()
    time.sleep(1)#加载网页时间
    #查看搜索结果
    res=driver.find_element_by_id('1')
    #获取元素文本内容
    connent=res.text
    if 'Python是一种计算机程序设计语言'in connent:
        print('测试通过')
    else:
        print('测试失败')
        print(connent)
    time.sleep(5)
    #浏览器和驱动进程一起退出
    driver.quit()
    

    相关文章

      网友评论

          本文标题:selenium01-第一个简单自动化脚本

          本文链接:https://www.haomeiwen.com/subject/jgitfctx.html