现如今社会科技发展太快了,纯功能点点点已经落后别人好几条街了,所以为了让自己多点职业生涯年限,得挺起肩,傲起头。自动化测试,其本质是用代码程序测试程序,所以其实第一步应该学好编程语言,后再自己开发自动化测试工具、框架,那这就到了高级测试工程师的位置了,在这之前就要学习掌握许多的相关知识,首先我们可以先学习探索几个自动化测试工具,这篇主讲selenium

一 前言:

  1、为了要代替繁琐重复的手动回归,这时利用上自动化工具是多么妙的感觉,在市面上自动化测试工具有很多,目前最常用的就是QTP和selenium,但是更喜欢selenium,因它开源免费,可定制,多语言,还跨平台(手机、windows、mac和Linux),唯一不足就是不支持桌面应用程序,只支持浏览器

  2、什么项目适合做UI自动化:①项目周期长 ②业务流程复杂 ③项目相对来说比较稳定 ④项目基于Adobe flash的话就不适合 ⑤定制化的项目

  3、selenium三个版本:

①selenium 1版,基于JS,通过向浏览器植入JS,完成操纵网页的目的

②selenium 2版,引入webdriver,基于HTTP协议,代码相当于客户端跟selenium的服务器会开一个session,代码传给selenium的服务器,服务器把代码翻译成driver能听懂的 语言,就是一个API接口,通过driver去驱动浏览器,简单讲把浏览器原生的API封装成WebDriver API,就可以直接操作浏览器页面里的元素,所以就像真正的用户在操作一样

       ③selenium 3版,跟selenium2没多大区别,主要区别是使用Firefox时是必须下载驱动 geckodrive

二 java+selenium框架:

所需环境,搭配好jdk

下载selenium-server-standalone和各个浏览器的driver,链接:https://pan.baidu.com/s/1U8umo6dL908EUfUDu92yBg 密码:3m7s

打开eclipse,在项目里新创建一个folder,把selenium-server-standalone-3.12.0.jar包放到这文件夹里来,然后在项目上右键点击build path----configure build path...---添加jre,ok.

为了运行代码时能随时随地找到这个driver,可放到项目里文件夹里,或是把driver的目录放在环境变量path里,或放在java/bin里面去,也可以把driver放到各个浏览器目录下边来.

谷歌,火狐,IE,edge等浏览器,其中edge在做自动化时,需要新建一个用户,使用非内置用户,若是系统管理员账号的话是会报错,其他浏览器没影响。

这边开始来如何实现 打开各个浏览器

         //把webdriver实例化,启动火狐
WebDriver dr=new FirefoxDriver();
//WebDriver dr=new ChromeDriver();
//WebDriver dr=new InternetExplorerDriver();
dr.get("https://www.baidu.com");
dr.close();//关掉浏览器
dr.quit();//退出驱动

成功打开

注意一点驱动和浏览器版本的兼容问题

嗑个selenium的API,写段代码来操作页面元素

定位页面元素优先考虑id和name,其次是xpath、LinkText,这边还是用百度网址

                 WebDriver dr=new ChromeDriver();
//WebDriver dr=new InternetExplorerDriver();
dr.get("https://www.baidu.com");
//定位到百度搜索框的元素,输入happy
dr.findElement(By.id("kw")).sendKeys("happy");
//清除
dr.findElement(By.id("kw")).clear();
//重新输入cake
dr.findElement(By.id("kw")).sendKeys("cake");
//dr.close();
//dr.quit();

三 Python+selenium框架:

Python官网下载地址:https://www.python.org/downloads/,目前最新版是3.7.0,这版本还不是太稳定,建议下载3.4-3.6版本,配置好环境变量,如下图代表安装成功了

下载安装selenium,只要在命令行输入 pip install selenium会自动安装

用Python敲一段打开浏览器

 from selenium import webdriver
import time
#dr=webdriver.Ie()
dr=webdriver.chrome()
dr.get('http://www.baidu.com')
time.sleep(3)
dr.close()
dr.quit()

玩玩自动化测试之selenium篇的更多相关文章

  1. 自动化测试之Selenium篇(一):环境搭建

    当前无论找工作或者是实际项目应用,自动化测试扮演着非常重要的角色,今天我们来学习下Selenium的环境搭建 Selenium简述 Selenium是一个强大的开源Web功能测试工具系列 可进行读入测 ...

  2. Appium移动自动化测试之Java篇

    1.环境准备:创建模拟器请参考:http://www.cnblogs.com/mrjade/p/5803131.html 2.新建一个java project,[File]-->[New]--& ...

  3. Selenium自动化测试之Selenium IDE

    简介 Selenium IDE 是实现Web自动化的一种便捷工具,本质上它是一种浏览器插件.该插件支持Chrome和Firefox浏览器,拥有录制.编写及回放操作等功能,能够快速实现Web的自动化测试 ...

  4. Python自动化测试之selenium从入门到精通

    1. 安装selenium 首先确保python安装成功,输入python -V 在windows下使用pip安装selenium,详情如图所示: 在ubuntu下使用pip install sele ...

  5. 自动化测试之selenium工具简单介绍

    一.selenium简单介绍 1.selenium的成员 2.selenium工作原理 二.webdrive 常见元素定位

  6. Windows下Python3+nose+appium自动化测试之Android篇

    [本文出自天外归云的博客园] 简介 以下用来做自动化测试的这款app叫最爱抓娃娃,以后会改名为网易抓娃娃. 下文提到的appiumier项目里会包含用来测试的apk包以及自动化测试代码. 先说一个坑 ...

  7. selenium自动化测试之整合测试报告

    selenium自动化测试之整合测试报告 标签(空格分隔): 整合报告 如下截图我们添加一个文件叫做:latest_report.py文件, import time import os import ...

  8. Selenium自动化测试之结果处理

    Selenium自动化测试之结果处理 一.断言 断言相当于性能测试中的检查点,常用断言种类很多,具体可以查看断言API:判断预期结果和实际结果是否一致,断言成功,程序继续处理,失败则终止运行,示例如下 ...

  9. Selenium自动化测试之数据驱动及用例管理

    Selenium自动化测试之数据驱动及用例管理 一.TestNg注解介绍 @Test:表示一个测试方法,在运行测试用例过程中,会自动运行@Test注解的方法. 例:

随机推荐

  1. 使用Vue做评论+localStorage存储(js模块化)

    未分模块化 html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> &l ...

  2. java基础(杂记)

    java基础夯实(杂记):1:创建实例对象可以通过无参的构造函数然后调用成员变量去初始化属性,也可以自己定义有参构造方法直接初始化属性,当属性为private时我们可以通过getset方法间接访问:2 ...

  3. 通过ajax给后台提交数据时,radio性别数据的获取

    通过ajax向后台异步发送数据,经常我们会遇到个人信息额提交,一般我们采用FormData来装数据.在装性别值得时候,我们会有两个radio框,获取radio值得方法如下: 一般情况下,一个radio ...

  4. Vue nodejs商城项目-商品列表页面组件

    data(){        return {            goodsList:[], // 商品列表            priceFilter:[ // 价格区间数组          ...

  5. Knowledge Point 20180305 机器数转换与进制转换

    机器数(这里的机器数说的就是数值在计算机中的存储形式,相关可以了解数据在计算机中的表示)之间的转换往往是通过原码来实现的,下面我们结合进制来来一下: 进制也就是进位制,是人们规定的一种进位方法. 对于 ...

  6. 开发工具--Eclipse使用及常见问题解决

    怎么查询Eclipse版本号: 方法一: 方法二: Eclipse安装目录下面找到readme文件夹,里边有个网页打开就可以看到当前版本; Eclipse汉化改为英文: Eclipse Mybatis ...

  7. 2018-03-21 11:34:44 java脚本批量转换java utf-8 bom源码文件为utf-8编码文件

    package com.springbootdubbo; import java.io.*;import java.util.ArrayList;import java.util.List; /** ...

  8. xcode运行时候 You don’t have permission.

    xcode 不能运行,提示没有权限    是因为使用第三方框架有plist文件存在

  9. [NOI2002]荒岛野人(exgcd,枚举)

    题目描述 克里特岛以野人群居而著称.岛上有排列成环行的M个山洞.这些山洞顺时针编号为1,2,…,M.岛上住着N个野人,一开始依次住在山洞C1,C2,…,CN中,以后每年,第i个野人会沿顺时针向前走Pi ...

  10. 【windows中常用的服务概览和总结】

    #IIS 1)ftp 功能:1-1)FTP地址限制: 1-2)SSL加密: 1-3)目录浏览(虚拟目录): 1-4)身份验证:(基本,匿名): 1-5)授权规则: 1-6)用户隔离:用户名目录隔离:1 ...