WEB、接口、APP自动化测试的一些看法

当故事看即可,只是个人看法...............

目前在各个软件公司中基本上存在WEB和APP的对外系统,不管是电子商务、电信、新闻等基本上都有WEB和APP同时存在。对于APP个人感觉是新东西,但也觉得它就是个老东西,因为大家是否记得我们曾经装在电脑上的Application应用程序,当然一个管理软件当时就很NB了。不过现在手机上的Application和以前电脑上的Application当然不管技术上还是形态上都是不一样的,但使用上似乎是一样的,同样的下载---安装---使用。这些都是体外话题,我想说的是软件测试,当年的软件危机大爆发导致了软件测试这个职业的出现,测试中的懒人出现导致自动化测试的产生,而Application应用程序是最初的尝试产品吧。那个时候的自动化测试就是很NB的自动化测试,但现在呢,应该叫Application应用程序的UI自动化测试、接下来互联网的出现,应该出现了WEB的UI自动化测试、再接下来API技术的来临,应该出现了接口的自动化测试、这几年又出现了手机版本Application出现,然后就是APP自动化测试的出现(其实APP自动化测试按技术类型分也包含了UI(UI应该主要包含了NATIVE和WEBVIEW,还有加载中间的hybrid,我还是看好WEBVIEW的未来,哈哈。。。。)和接口。说了这么多只想说明我知道的挺多.....接下来我想说说WEB的UI自动化测试、接口自动化测试和APP的自动化测试。

WEB的UI自动化测试:

很多人在说自动化测试的时候,基本上现在指的是WEB的UI自动化测试,但其实这是不对的,自动化测试包含了很多开发的技术,不只是界面上的自动化测试。WEB的UI自动化测试只是其中的一种,但它的工具确实最多的,我所知道的有WINRUNNER\QTP(UFT)\TESTCOMPLETE\SILKTEST\ROBOT\SELENIUM\RF\WAITER等等,当然最出名的是商业工具QTP和开源工具SELENIUM。现在各个公司通过开源搭建的自动化框架基本上都是以SELENIUM为底层,个人感觉SELENIUM还是非常的好的工具。而对于没有开发基础的测试人员,可以考虑QTP这个自动化工具,掌握比较快,但要学精还是需要掌握开发技术。但当你掌握了开发技术后就会放弃QTP想玩SELENIUM了。原因是QTP越做越烂了,虽然最新版本的UFT增加了API的测试,当我觉得这个更加是鸡肋,QTP这个产品在WINDOWS环境下做还可以,但是你想扩展到其他环境就麻烦了,如自动启停进程相关的操作....。工具介绍就到这吧,总体来说根据自己的需求来选择符合自己公司的工具和开发语言。接下来我说下WEB的UI自动化测试的优缺点:

缺点:

开发效率低、维护成本高、执行速度慢.......................几百种缺点。

优点:

用户操作真实性强。

接口自动化测试:

接口自动化测试在后来出现,但现在大部分的互联网公司都喜欢用它作为测试工作辅助。原因很简单,UI自动化的缺点它都能进行弥补,但同时它也存在一个最大的问题:用户操作真实性不强。其实个人觉得接口自动化测试和UI自动化测试可以产生互补的测试。因为我们做接口测试时更多的是根据开发的技术进行测试HTTP\SOCKET等等(接口测试基本上不需要用到什么工具进行,如果一定需要的话建议是用SOAPUI),而非真实的进行对系统进行操作验证系统是否存在问题。

APP的自动化测试:

APP的自动化测试应该也要分为UI和接口自动化测试,接口测试与上面说的一样都是技术层面上的事情就不说了。那么还是关注APP的UI自动化测试,APP的自动化测试工具方面也有很多,但也都不成熟,我选择了APPIUM,主要考虑到的它可以进行跨平台测试,但最大的问题还是不稳定。所以也不敢大面积的布置其自动化测试用例。APP刚才说过了主要分为NATIVE和WEBVIEW,NATIVE的对象还好获取,像android可以直接使用uiautomatorviewer进行获取。而WEBVIEW就比较麻烦,不能直接获取要么就让开发提供给你,要么就直接下代码自己找,还有就是通过google的一个方法进行获取.......

说了一下这三种技术的一些内容,其实我想说不管什么类型的自动化测试,我们测试的过程中都需要和开发进行紧密的结合,但测试优于开发的测试思想。另外这三种技术我们在实际的应用中更应该将其进行混合的测试:

1、UI(WEB)自动化测试走主流程的测试、接口自动化测试走全面的测试:先布置接口的自动化测试用于测试和回归测试,特别在敏捷测试中,接口自动化测试应该占主体。后布置UI自动化测试用于住流程的回归测试。

2、UI(WEB)自动化测试与APP自动化测试结合:需要一个自动化测试框架的协调,可以进行UI自动化测试到APP接口层的长流程场景自动化测试,也可以进行UI自动化测试到APPUI层的长流程场景自动化测试。

3、接口自动化测试与APP自动化测试结合:其实和UI与APP自动化测试长流程的交换一样的原理,需要自动化测试框架的支撑。先进行接口测试用例的执行后进行APP的UI和接口测试的用例执行。

以上是我想说的这么个故事....看看就好....

时间: 2024-10-21 06:04:13

WEB、接口、APP自动化测试的一些看法的相关文章

关于《Web接口开发与自动化测试--基于Python语言》

关于封面logo 首先,你会被书封上面logo吸引,这么炫酷?双蛇杖?嗯,这是Requests的新logo. 旧的logo是一只乌龟. 新logo是双蛇杖: 看到新logo我首先想到的是 火爆全网页游 “大天使之剑”,直到前两天一位网友告诉我这是双蛇杖,然后,我百度了一下双蛇杖的神话故事.然后,找到了Requests库开发者的一次提交,有人说喜欢旧logo,然后,得到的答复是:“This represents the peace Requests brings between the serve

iOS、安卓app还有web框架ui_framework轻松实现app自动化测试以及web自动化测试

一.功能介绍 Ui_framework类似于interface_framework 提供一个gem包,安装后即可使用. 1.实现了Android以及iOS app自动化测试底层基本方法封装以及测试执行报告: 2.实现了web自动化测试框架封装,实现了web标签操作予以动态方法达到元素操作目的,无需因为标签种类增加或者操作变动而增加变动底层方法 二.框架架构说明 架构图: 三.使用说明 1.  安装gem包ui_framework: 2.  脚本中require 'ui_framework' 3.

快速入门web接口自动化测试---知识与思想准备阶段(一)

刚换了工作,老板要求我搞接口自动化,可是之前完全没有搞过,怎么办?怎么办?答:先把B装下了,然后学!个人感觉,这是在工作提升自己的最好方式,嘻嘻,鄙人在这里以日记的形式,记录自己作为一个技术渣,点点滴滴开展接口自动化的过程. 首先很惭愧,大学里的知识框架落下了太多的空白,第一步,要填补自己在知识框架的空白. 对,先来一份知识清单: HTTP协议: 请求头,请求参数,Get ,Post, Put , Delete , 重定向,资源(括号后面接一万字) 接口的概念: web接口与程序接口 常用的接口

对自动化测试的一些看法

目前我们可以接触到手机方面的自动化工具:robotium,monkey,monkeyrunner,androidjunit.但是由于ui变化快,自动化测试往往不方便维护.前三个不需要源码支持,但是功能有限,androidjunit很强大,对代码能力要求高,同时需要源码支持.app的开发周期一般都很短,ui变化大,用自动化要考虑投入成本,大多数的公司估计都不适用.不过测接口之类的通过自动化是个不错的选择. 说得多有道理的: 1.移动互联网开发节奏很快,版本快速迭代,如何让测试敏捷起来? Monke

老李分享:android app自动化测试工具合集

老李分享:android app自动化测试工具合集 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:908821478,咨询电话010-84505200.我们从2016年8月开始不断升级测试开发工程师就业培训的班的课程,不断新增和优化课程内容,为了和当下企业的实际情况,提高学员的实战水平,在2016年稳定课程主题框架,做到每半年升级一版. 安卓应用自动化测试工具之一 - PerfectoMob

基于appium的app自动化测试框架

基于appium框架的app自动化测试 App自动化测试主要难点在于环境的搭建,appium完全是基于selenium进行的扩展,所以app测试框架也是基于web测试框架开发的 一.设备连接 (即构建基础的测试环境,保证可以驱动设备进行操作) 0.准备测试环境 1)安装jdk配置java_home环境变量: 2)安装Android SDK(安卓软件开发包)(adb.appt ) 3)安装nodejs,并通过npm安装appium 1.获取app包名appPackage 在cmd命令行中输入aap

App自动化测试-1.App自动化介绍和环境搭建

*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* BLOCKS =============================================================================*/ p, blockquote, ul, ol, dl, table, pre { margin: 15px 0; } /* HEAD

MVC.Net:读取Web.config/App.config配置

需要读取Web.config/App.config的配置很简单,首先我们需要将配置写入到<appSettings>中,例如: <appSettings> <add key="thumbSize_weight" value="300"/> <add key="thumbSize_height" value="300"/> </appSettings> 读取配置语句(需要

web接口开发与测试

最近一直在学习和整理web开发与接口测试的相关资料.接口测试本身毫无任何难度,甚至有很多工具和类库来帮助我们进行接口测试.大多测试人员很难深入了解web接口测试的原因是对web开发不太了解,当你越了解开发就会越看得清接口是什么.当然,web开发是比较麻烦,我们很难一下子掌握. 注:不过本文并不是一个零基础的文章,需要你对 Django web开发,requests接口库,unittest单元测试框架,三者有一定的了解. Django快速开发之投票系统 之前分享过一篇Django开发投票系统的例子