最近几天,由于工作需要接触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. MySQL之SELECT用法

    主要是为了搞定一个select语句,因为语法比较奇怪,没看懂,百度了一些结果 select的东西相当于一个临时表,as就给这临时表取个名字. SELECT语句的完整语法SELECT语句的完整语法为: ...

  2. 一行代码搭建 Python 静态服务器

    如果电脑上安装有Python, 那么进入到目标文件夹,在终端中运行如下命令, 即可搭建映射当前目录的静态文件服务器: python -m SimpleHTTPServer 9000 默认端口号是800 ...

  3. COGNOS安装与发布报表步骤

    1. 安装 1.1安装前准备 安装COGNOS需要先安装好iis和sql Server(因为我们用的数据库系统就是SQLServer). 1.2安装过程 1)    找到BI Server文件 2)  ...

  4. ASP.NET MVC 5 ABP DataTables (一)

    1)ABP DataTables 应用(一) 2)  ABP DataTables 应用(二) JS DataTables 这个组件绑定数据必须要有自己的返回数据格式.但是ABP返回的格式直接绑定是错 ...

  5. Java对正则表达式的支持(一)

    Java对正则表达式的支持主要体现在String.Pattern.Matcher和Scanner类. 1.Pattern.Matcher 先看一个Pattern和Matcher类使用正则表达式的例子. ...

  6. 2018-01-08 学习随笔 SpirngBoot整合Mybatis进行主从数据库的动态切换,以及一些数据库层面和分布式事物的解决方案

    先大概介绍一下主从数据库是什么?其实就是两个或N个数据库,一个或几个主负责写(当然也可以读),另一个或几个从只负责读.从数据库要记录主数据库的具体url以及BigLOG(二进制日志文件)的参数.原理就 ...

  7. java设计模式在公众号的应用——我是一个快乐的单例

    终于可以休息了,寻一把躺椅,安置于庭院,携一壶好茶,品一番风轻云淡... 自由自在的呼吸,伸手即可触摸阳光的温度,此时此刻,我就是我,像一个单例. 想起『设计模式』,就像想起了很久很久以前的故事,今日 ...

  8. ionic2+Angular 依赖注入之Subject ——使用Subject来实现组件之间的通信

    在Angular+ionic2 开发过程中,我们不难发现,页面之间跳转之后返回时是不会刷新数据的. 场景一:当前页面需要登录之后才能获取数据--去登录,登录成功之后返回--页面需要手动刷新才能获取到数 ...

  9. 损失函数 hinge loss vs softmax loss

    1. 损失函数 损失函数(Loss function)是用来估量你模型的预测值 f(x) 与真实值 Y 的不一致程度,它是一个非负实值函数,通常用 L(Y,f(x)) 来表示. 损失函数越小,模型的鲁 ...

  10. Git hook实现自动部署

    Git Hook 是 Git 提供的一个钩子,能被特定的事件触发后调用.其实,更通俗的讲,当你设置了 Git Hook 后,只要你的远程仓库收到一次 push 之后,Git Hook 就能帮你执行一次 ...