zoukankan      html  css  js  c++  java
  • Selenium

    一、任务描述

      本实验任务主要对Selenium进行一些基本操作,通过完成本实验任务,要求学生熟练掌握Selenium的操作,并对selenium的基本操作进行整理并填写工作任务报告。

    二、任务目标

    1、掌握Selenium的使用

    三、任务环境

    Ubuntu16.04、Python2.7

    四、任务分析

      selenium 是一套完整的web应用程序测试系统,包含了测试的录制(selenium IDE),编写及运行(Selenium Remote Control)和测试的并行处理(Selenium Grid)。Selenium的核心Selenium Core基于JsUnit,完全由JavaScript编写,因此可以用于任何支持JavaScript的浏览器上。

    selenium可以模拟真实浏览器,自动化测试工具,支持多种浏览器,爬虫中主要用来解决JavaScript渲染问题。

     ♥ 温馨提示
    Selenium 2.0 = Selenium 1.0 + WebDriver。

    五、任务实施

    步骤1、环境准备

      右击Ubuntu操作系统桌面,从弹出菜单中选择【Open in Terminal】命令 打开终端。

      通过【cd /home】切换到home目录下。【ls】查看该目录下的所有内容。

    图1 切换目录

      【mkdir seleniumCopy】在home目录下创建seleniumCopy文件夹。

    图2 创建文件夹

    步骤2、Selenium安装

      【pip install Selenium==3.0.1】是安装的方式。

      Selenium2.x调用高版本浏览器会出现不兼容问题,调用低版本浏览器正常。

      Selenium3.x调用浏览器必须下载一个类似补丁的文件,比如Firefox的geckodriver,Chrome的为chromedriver。

      【tar -zxvf /home/soft/geckodriver-v0.17.0-linux64.tar.gz -C /home/soft/firefoxDriver/】解压Firefox的补丁压缩包。

    图3 压缩tar包

      【cd soft/firefoxDriver/】切换至解压的目录,【ls】查看解压的内容。

    图4 切换目录

      【vim /etc/profile】配置环境变量,按键盘【i】进入编辑状态,在最后输入如下程序。

    图5 配置环境变量

      编辑完毕后,按【esc】退出编辑状态,【:wq】保存并退出编辑框,【source /etc/profile】刷新配置文件。

    图6 刷新配置文件

      【cd /home/seleniumCopy/】切换目录,【vim baiduSpider.py】回车后创建一个名为baiduSpider的Python文件。

    图7 创建Python文件

      回车后进入编辑框内,按键盘【i】进入编辑状态,输入如下程序。

      首先使用webdriver.Firefox()获取Firefox浏览器的驱动,调用get方法,打开百度首页,判断标题中是否包含百度字样,接着通过元素名称wd获取输入框,通过send_keys方法将网络爬虫填写其中,然后回车。延时3秒后,判断搜索页面是否有网络爬虫字样,最后关闭driver。(注释只是为了让界面展示,否则会一闪而过)。

    图8 编辑Python文件

      编辑完毕后,按【esc】退出编辑状态,【:wq】保存并退出编辑框,【python baiduSpider.py】执行baiduSpider的Python文件。

      效果如下所示。

    图9 运行Python文件

    步骤3、页面操作

      【vim loginSelenium.py】回车后创建一个名为loginSelenium.py的python文件。

    图10 创建Python文件

      回车后进入编辑框内,按键盘【i】进入编辑状态,输入如下程序。

      【driver.find_element_by_name(“username”)】通过元素name定位

      【driver.find_element_by_xpath(“.//*[@id=’loginForm’]/input[2]”)】通过xpath定位

      【username.send_keys(“shiyanbar”)】写入用户名

      【password.send_keys(“simple”)】写入密码

      【login_button.click()】模拟点击登录。

    图11 编辑Python文件

      编辑完毕后,按【esc】退出编辑状态,【:wq】保存并退出编辑框,【python loginSelenium.py】执行loginSelenium的Python文件。

      弹出的浏览器会输入用户名和密码进行提交。

    图12 运行Python文件

      login.html网页中存在下拉选项卡,【vim loginSelenium.py】再次编辑文件。对下拉选项卡进行操作。修改程序如下。

      首先获取select元素,也就是下拉选项卡。然后轮流设置了select选项卡中的每一个option选项。

    图13 编辑Python文件

      编辑完毕后,按【esc】退出编辑状态,【:wq】保存并退出编辑框,【python loginSelenium.py】执行loginSelenium的Python文件。

      下拉框会显示所有选项。

    图14 运行Python文件

      但是并不是一个非常有效的方法。在WebDriver中提供了一个叫Select的方法。

      【vim loginSelenium.py】再次编辑文件。对下拉选项卡进行操作。修改程序如下。

      可以根据索引、文字、value值来选择选项卡中的某一项。

    图15 编辑Python文件

      编辑完毕后,按【esc】退出编辑状态,【:wq】保存并退出编辑框,【python loginSelenium.py】执行loginSelenium的Python文件。

      下拉框会显示索引为2的选项。

    图16 运行Python文件
  • 相关阅读:
    43前端
    42 前端
    python 列表
    python 字符串方法
    python while语句
    zhy2_rehat6_mysql02
    zhy2_rehat6_mysql01
    bay——安装_Oracle 12C-RAC-Centos7.txt
    bay——RAC_ASM ORA-15001 diskgroup DATA does not exist or is not mounted.docx
    bay——Oracle RAC集群体系结构.docx
  • 原文地址:https://www.cnblogs.com/yu-1104/p/9050407.html
Copyright © 2011-2022 走看看