最近几天,由于工作需要接触Web自动化测试,所以我从网上找的资料,学习了解,然后自己总结汇总的随笔,如文章中有不足的地方,请大家多多指教;或者文章内容与他人相似,望见谅。

手工测试跟自动化测试区别:

      手工测试:就是由人去一个一个输入用例,然后观察结果,和机器测试相对应,属于比较原始但是必须的一个步骤。

      自动化测试:自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较。在此过程中,为了节省人力、时间或硬件资源,提高测试效率,便引入了自动化测试的概念。

适用场合:配置和兼容性测试、执行压力测试,软件维护时回归测试。

自动化可以测试:崩溃、挂起、错误返回值、返回码、 异常和内存使用。

优点:

  1. 可以运行更多更繁琐的测试。自动化的一个明显的好处是可以在较少的时间内运行更多的测试。
  2. 对程序的回归测试更方便。  详情说明 :回归测试的动作和用例时完全设计好的,测试期望的结果也是完全可以预料的,将回归测试自动运行,可以极大提高测试效率,缩短回归测试时间。
  3. 可以执行一些手工测试困难或不可能进行的测试。详情说明:自动化测试模拟同时有许多用户,从而达到测试的目的
  4. 更好地利用资源。
  5. 测试具有一致性和可重复性。详情说明:由于测试是自动执行,每次测试的结果和执行的内容一致性是可以得到保障的,从而达到测试的可重复的效果。
  6. 测试的复用性。详情说明:由于自动测试通常采用脚本技术,领测认为这样就有可能只需要做少量的甚至不做修改,实现在不同的测试过程中使用相同的用例。
  7. 增加软件信任度。详情说明:由于测试是自用执行的,所以不存在执行过程中的疏忽和错误,完全取决测试的设计质量。一旦软件通过强有的自动测试后,软件的信任度自然增加。

       缺点:

  1. 不能取代手工测试,有很多需要人脑判断结果的测试用例无法用自动工具实现,或者代价太大。
  2. 手工测试比自动测试发现的缺陷更多。
  3. 对测试质量的依赖性极大。
  4. 测试自动化提高有效性。
  5. 测试自动化可能会制约软件开发。由于自动测试比手动测试更脆弱,所以维护会受到限制,从而制约软件的开发。

自动化测试工具     

web自动化测试工具:Selenium/Selenium Webdriver、watir

        详细说明:    Selenium:是一个开源的自动化工具,目前是市场上最受欢迎和广泛应用的工具。同时也是Web应用程序编写的一个验收测试工具,UI功能测试框架;它可以跨越多个操作系统像Windows,Mac和Linux以及浏览器,如Firefox,Chrome,IE。Selenium测试脚本可以用Java,C#,Python,Ruby,PHP,Prel和JavaScript等编程语言编写。

Selenium IDE是一个用于Selenium脚本的集成开发环境,它以Firefox扩展形式实现,允许您记录,编辑和调试测试,它支持录制和播放,有记录和回放功能。

Selenium IDE:测试的录制;Selenium Remote Control:编写及运行;Selenum Grid:测试并行处理;Selenum WebDriver:提供了各种语言环境的API来支持更多控制权和编写符合标准软件开发实践的应用程序。

版本:3个版本,一个叫Selenium—core,Selenium—rc;Selenium—core是使用HTNL的方式编写测试脚本,Selenium—rc是Selenium Remote Control简称,是具体语言来编写测试类的;Selenium RC是Selenium1.0,Selenuim2.0以WebDriver为主,Selenium3.0去掉了Selenium RC,Selenium3.0支持Java 8以上。

个人理解:Selenium IDE作为Firefox上的插件,提供录制功能;Selenium Remote Control 是一个客户端/服务器,可以在本地或在其他电脑上控制Web浏览器,使用几乎任何编程语言和测试框架,换言之是使用具体语言来编写测试类;Selenium Grid可以远程的控制到并在多个服务器上同时运行测试;Selenium WebDriver可以在本地或远程计算机上驱动浏览器

             

性能自动化测试工具:loadrunner、QTP、Jmeter

Selenium 环境配置

Selenium官网:http://www.seleniumhq.org/download/

Selenium自动化测试

Selenium C#学习网址:http://toolsqa.com/selenium-c-sharp/

Selenium自动化测试学习网址:https://testingbot.com/support/getting-started/csharp.html

Watir自动测试

Watir:是一个使用Ruby实现的开源Web自动化测试框架,同时脚本也是Ruby的脚本,所以需要在本机安装Ruby。  

Watir学习网址:https://rubygems.org/gems/watir

      

自动化测试(—)Web自动化测试理解的更多相关文章

  1. 使用 Sahi 实现 Web 自动化测试

    Sahi 是 Tyto Software 旗下的一个基于业务的开源 Web 应用自动化测试工具.Sahi 运行为一个代理服务器,并通过注入 JavaScript 来访问 Web 页面中的元素.Sahi ...

  2. 从手工测试转型web自动化测试继而转型成专门做自动化测试的学习路线。

    在开始之前先自学两个工具商业web自动化测试工具请自学QTP:QTP的学习可以跳过,我是跳过了的.开源web自动化测试工具请自学Selenium:我当年是先学watir(耗时1周),再学seleniu ...

  3. Sahi ---实现 Web 自动化测试

    参考网址:http://sahipro.com/docs/sahi-apis/index.html Sahi 是 Tyto Software 旗下的一个基于业务的开源 Web 应用自动化测试工具.Sa ...

  4. Web自动化测试Selenium 学习笔记(一)

    1.Web自动化测试简介自动化基础:自动化用例编写.Selenium优势及原理.自动化环境搭建Selenium基础:常见8大元素定位(表格).常见元素处理.下拉框元素处理.不同窗口切换.元素进阶.元素 ...

  5. selenium3与Python3实战 web自动化测试框架✍✍✍

    selenium3与Python3实战 web自动化测试框架  整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课 ...

  6. Python Web自动化测试入门与实战,从入门到入行

    Python Web自动化测试入门与实战 购买地址 · 京东:https://item.jd.com/69239480564.html   天猫:https://detail.tmall.com/it ...

  7. web自动化测试中绕开验证码登陆的方式

    web自动化测试中登陆需验证码是很大的一个困扰.现推荐一种简单的避开验证码登陆的方式,先代码进入登录页,人工输入验证码登录后浏览器自动保存cookie,再在新的标签中登录. 具体代码如下: publi ...

  8. Web自动化测试工具调研

    背景 Web自动化测试越来越被重视, 因为现在Web已经是工程化的状态. 如何通过工具测试, 保证Web开发的质量,提升开发效率,是Web工具的诞生的来由. Web测试分为以下几个方面: 1. 界面测 ...

  9. Web自动化测试学习方向(Selenium)

    目前越来越多的人想学自动化测试,认为自动化测试好牛逼.经常在测试交流群里看见有HR发招聘广告说:招初级(功能测试),招中级(性能测试),招高级(自动化测试)...... 我不去讨论他们这个初中高级的说 ...

随机推荐

  1. cell数组

     问题: (注意,matlab判断一个数的类型的函数是class(var)) 如果p为一个数,那么h(1)=p,是没有问题的. 如果p为一个向量,那么h(1,:)=p是没有问题的. 如果p是一个矩阵的 ...

  2. MySQL相关命令与备份

    不加任何参数直接备份 mysqldump -uroot zabbix >/opt/zabbix.bak.sql 恢复,这样恢复时需要自已创建表 mysql -uroot < zabbix. ...

  3. jQuery动画详解

    本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. jQuery 动画 jQuery提供的一组网页中常见的动画效果,这些动画 ...

  4. Docker之容器

    容器(Container) 容器介绍: docker是通过容器来运行业务的,就像运行一个kvm虚拟机是一样的.容器其实就是从镜像创建的一个实例. 我们可以对容器进行增删改查,容器之间也是相互隔离的.和 ...

  5. flask----flask-session

    一.flask-session flask-session是flask框架的session组件,由于原来flask内置session使用签名cookie保存,该组件则将支持session保存到多个地方 ...

  6. css层叠样式初学

    一.css简介 1.层叠样式表:叠加效果,不同css对同一html修饰,冲突部分,优先级高作用,不冲突部分,共同作用 2.css作用 (1)修饰html (2)替代了标签自身的颜色,字号等属性,提高复 ...

  7. JAVA设计模式---单例模式的几种实现方式比较

    1.延迟实例化方式:(懒汉模式) public class Singleton { private static Singleton uniqueInstance; private Singleton ...

  8. 看雪.TSRC 2017CTF秋季赛第三题

    看雪.TSRC 2017CTF秋季赛第三题 wp 这是一道很简单的题,反调试的坑略多.这道题采用了很多常用的反调试手段,比如调用IsDebuggerPresent.进程名检查等等.另外也有利用SEH的 ...

  9. codechef Dynamic GCD [树链剖分 gcd]

    Dynamic GCD 题意:一棵树,字词树链加,树链gcd 根据\(gcd(a,b)=gcd(a,a-b)\) 得到\(gcd(a_1, a_2, ..., a_i) = gcd(a_1, a_1- ...

  10. HoloLens开发手记-世界坐标系 Coordinate systems

    坐标系 Coordinate systems 全息的核心是,全息应用可以在真实世界中放置全息图形并使得它们看起来和听起来像真实的物体.这涉及到了物体在真实世界中的定位和方向的确定,这对用户来说很重要. ...