当前位置:三九宝宝网 → 宝宝百科 → 宝宝知识 → 正文

自动化测试的过程

更新:04-16 整理:39baobao.com
字体:

[如何快速学会selenium自动化测试工具]当所有水管通路全部安装好后才可以水管压力测试,在测压前要 封堵所有的堵头,关闭所有阀门,打开进水总管的阀门。测压时,摇动水管压力测试机,直到压力表的指针指向0.9-1.0左右,也就...+阅读

自动化测试 与软件开发过程从本质上来讲是一样的,无非是利用自动化测试工具(相当于软件开发工具),经过对测试需求的分析(软件过程中的需求分析),设计出自动化测试用例(软件过程中的需求规格),从而搭建自动化测试的框架(软件过程中的概要设计),设计与编写自动化脚本(详细设计与编码),测试脚本的正确性,从而完成该套测试脚本(即主要功能为测试的应用软件)。

1) 自动化测试需求分析。

当测试项目满足了自动化的前提条件,并确定在该项目中需要使用自动化测试时,我们便开始进行自动化测试需求分析。此过程需要确定自动化测试的范围以及相应的测试用例、测试数据,并形成详细的文档,以便于自动化测试框架的建立。

2)自动化测试框架的搭建。

所谓自动化测试框架便是像软件架构一般,定义了在使用该套脚本时需要调用哪些文件、结构,调用的过程,以及文件结构如何划分。

而根据自动化测试用例,我们很容易能够定位出自动化测试框架的典型要素:

a. 公用的对象。

不同的测试用例会有一些相同的对象被重复使用,比如窗口、按钮、页面等。这些公用的对象可被抽取出来,在编写脚本时随时调用。当这些对象的属性因为需求的变更而改变时,只需要修改该对象属性即可,而无需修改所有相关的测试脚本。

b. 公用的环境。

各测试用例也会用到相同的测试环境,将该测试环境独立封装,在各个测试用例中灵活调用,也能增强脚本的可维护性。

c. 公用的方法。

当测试工具没有需要的方法时,而该方法又会被经常使用,我们便需要自己编写该方法,以方便脚本的调用。

d. 测试数据。

也许一个测试用例需要执行很多个测试数据,我们便可将测试数据放在一个独立的文件中,由测试脚本执行到该用例时读取数据文件,从而达到数据覆盖的目的。

在该框架中需要将这些典型要素考虑进去,在测试用例中抽取出公用的元素放入已定义的文件,设定好调用的过程。

移动app的UI和接口自动化测试怎么进行

接口自动化测试:

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

APP自动化测试:

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

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

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

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

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

TestBird

如何学习自动化测试

软件自动化测试的学习步骤 大概步骤如下: 1. 做好手工测试(了解各种测试的知识)->2. 学习编程语言->3. 学习Web基础(HTML,HTTP,CSS,DOM,Javascript)或者 学习Winform ->4. 学习自动化测试工具 ->5. 学习自动化测试框架 ->6. 实现自动化测试用例 ->7. 开发自动化测试工具 ->8. 开发自动化测试框架 自动化测试的最高境界是: 开发测试工具,设计自动化测试框架, 让别人用。 自动化测试的本质 自动化测试的本质是:用程序测试程序。 也就是说学习“编程语言”是学习自动化测试的基础。 很多人问小坦克我学自动化测试,应该去学什么自动化工具。 我的回答是,第一步:应该先学习编程语言,以后再去学自动化测试工具 自动化测试是一定要写代码的, 编程语言水平的高低决定了自动化测试水平的高低, 有了扎实的编程技术,干什么都可以。

学习编程语言时, 要把自己当做开发人员, 系统地学习各种编程知识。 自动化测试学习的误区 很多新手一开始,就学习复杂的自动化测试工具, 我觉得这样是本末倒置了。 如果不先理解HTTP协议, 就不会理解Jemeter, LoadRunner, Fiddler, SoapUI这些工具的。 如果不先理解HTML,DOM, 就不会理解Firebug 这种工具的 如...软件自动化测试的学习步骤 大概步骤如下: 1. 做好手工测试(了解各种测试的知识)->2. 学习编程语言->3. 学习Web基础(HTML,HTTP,CSS,DOM,Javascript)或者 学习Winform ->4. 学习自动化测试工具 ->5. 学习自动化测试框架 ->6. 实现自动化测试用例 ->7. 开发自动化测试工具 ->8. 开发自动化测试框架 自动化测试的最高境界是: 开发测试工具,设计自动化测试框架, 让别人用。 自动化测试的本质 自动化测试的本质是:用程序测试程序。

也就是说学习“编程语言”是学习自动化测试的基础。 很多人问小坦克我学自动化测试,应该去学什么自动化工具。 我的回答是,第一步:应该先学习编程语言,以后再去学自动化测试工具 自动化测试是一定要写代码的, 编程语言水平的高低决定了自动化测试水平的高低, 有了扎实的编程技术,干什么都可以。 学习编程语言时, 要把自己当做开发人员, 系统地学习各种编程知识。 自动化测试学习的误区 很多新手一开始,就学习复杂的自动化测试工具, 我觉得这样是本末倒置了。 如果不先理解HTTP协议, 就不会理解Jemeter, LoadRunner, Fiddler, SoapUI这些工具的。 如果不先理解HTML,DOM, 就不会理解Firebug 这种工具的 如果不先理解Win32 API, 就不会理解Windows 窗体自动化测试的原理的。

如果自己没有开发过网站, 就不会理解网站的各个方面,测试起来难免有遗漏。 总之学习自动化测试,需要循序渐进, 把基础打好。 自动化测试的职位 自动化测试工程师的职位叫做: (SDET) Software Development Engineer in Test. 专注于自动化测试 手动测试工程师叫: (STE)Software test enginer. 专注于手动测试 在微软有很多SDET的职位,但是没有STE的职位, STE职位一般都是外包给外包公司的, 目前自动化测试还是非常吃香的。 自动化测试分类 自动化测试也有非常多的种类, 对Web UI 的自动化测试程序 对Windows 窗体UI的自动化测试程序 API测试, 比如(测试WCF service, Web API 等) 数据库测试, 比如测试存储过程 接口测试 (这种只能用自动化测) 单元测试 性能测试, 性能测试都需要用到自动化

怎样开始用selenium进行自动化测试

作为一个之前没接触过selenium的新手来说,如果之前有过写代码的经验,那么学习起来就会更加快速!但无论如何,开始总是比较难的!

我也是从一个接近纯24K小白成长起来的,一步一个脚印,在这个过程中我学习到了很多新的知识,有了新的突破,新的成长,不断地努力,不断地尝试,不断地总结经验,让我一直走到了今天,未来,还有很多路要走!义无反顾,我的测试之路!

所以,今天抽空回顾一下我的selenium学习过程,也就是,selenium自动化测试怎么开始,这些,是我的个人经验,分享出来给大家参考!

一开始,基本上很多人都是用selenium IDE录制脚本开始的,我也是!有一本书写得很不错:selenium初学者指南!So,从录制回放开始我的selenium,而在这个过程中,不断地去补充我的html css知识,熟悉selenium的api!

慢慢地,发现录制的脚本在回放的时候经常报错,通过检查发现,是定位上的错误,导致这种定位的错误的最大原因是系统前端采用了某种框架,如tigerUI,exj....所以HTML里面的标签很多都是动态的,比如id,class,name!这对selenium操作定位的元素而进行自动化来说是致命伤!

所以,开始自己写定位信息,这已经是必须的了!从而学习了xpth和css选择器,掌握了更加有效,快速和稳定地定位页面上的元素(定位的时候难免会碰到有iframe,这就得先切换到iframe中再进行定位了)!也就是,在selenium IDE上写脚本!

信心满满地在selenium IDE上写了长长地一段脚本,并且反复跑都能成功!总算尝到了一点点幸福的滋味!然后呢,问题来了,当我要修改和扩展这段的脚本的时候,才发现这效率是相当地低!一句句查!一句句改!多么痛的领悟!

另外,selenium IDE 默认启动的是火狐,在使用selenium RC 启动 IE 进行跑脚本时浏览器总是会报错!各种搞不定,各种不淡定!决定放弃使用IDE!

selenium有一个强大之处就是支持多种语方:java,C#,python等等,并且可以把录制的脚本转换成代码!我用的是java,果断走起!

不用说,当然是把脚本转为java代码了,在Eclipse中重新开始搞!

选择一个测试框架:有Junit和TestNg两个选择,公司用的是junit,所以,不用多说,我就用junit验证selenium脚本的运行结果!并且,Junit和TestNG都可以生成比较直观的测试报告!

写好一些代码,会看到整段代码中密密麻麻充斥着基本相同的代码:开始封装代码!把常用到API封装起来!封装好之后代码看着就舒服多了!

接下来,是不是也应该把代码中的定位信息用一个专门的文件放起来,再去读取里面的定位信息,这样,维护代码和维护定位信息就放在了两个地方,不用老是扎在代码和定位路径中,简单地分一下层!果断尝试!

到这里,脚本写出来了,常用的api封装起来了,定位路径分离出来了!整个代码简洁多了!写起来容易和舒服多了!这时候,该个性化定制一下自己的框架了,这里,就暂时不写下去了,已经离怎样开始selenium挺远的了!或许,到了这一步,你早就有自己对测试框架的想法和对脚本的设计方法了。。。。加油吧,把想法化为实际的动力,继续向前!

本文地址:https://www.39baobao.com/show/39_372430.html

以上内容来自互联网,请自行判断内容的正确性。若本站收录的信息无意侵犯了贵司版权,请联系我们,我们会及时处理和回复,谢谢.

以下为关联文档:

如何自动化与SSIS包存储过程的执行下面是这样的一种方式。在SSIS 2008 R2和SQL Server 2012的后端。 创建一个表来存储你的价值观。比方说,该表是dbo.SProcValues。基于存储的定义,表架构是这样的。 CREATE TAB...

自动化测试工具有哪些QTP全名HP QuickTest Professional software ,最新的版本为HP QuickTest Professional 11.0QTP是quicktest Professional的简称,是一种自动测试工具。使用QTP的目的是想用它来...

常用自动化测试工具都有哪些列举一些工具和框架,有开源的也有商业的 monkey monkeyrunner monkeytalk Instrumentation UIAutomator Espresso Calabash Selendroid Robotium Appium Testbird SeeTest Si...

Android手机自动化测试工具有哪些安卓手机自动化测试工具通常来说是匹配的系统设置软件以及基础的工具,通常就是通过软件来测试当前的状态。 UiAutomator也是Android提供的自动化测试框架,基本上支持所有的And...

安卓手机自动化测试工具是什么一、首先说说手机自动化测试的原理 1、手机自动化测试的原理为PC上一个控制端(测试工具)与手机上的一个agent端,通过串口、USB或者无线方式将PC与手机终端相连,然后应用测试工具...

Python有什么成熟的Web自动化测试工具我曾经实现过web测试的自动化库,主要说一下模拟浏览器部分: 对于IE,mshtml组件+一些windows API足够了,因为IE浏览器本身就是构建在这个组件之上,用这个跟真实的浏览器行为非常...

自学自动化测试的条件和方法AutoRunner是黑盒测试工具,可以用来完成功能测试、回归测试,可以提高测试效率,降低测试人工成本。 自动化测试是当今测试发展的方向,能够帮助软件开发团队实现: ● 节省测试时间...

如何学会使用安卓自动化测试工具MonkeyRunner第一步、安卓自有目录\tools\hierarchyviewer.bat工具可以用来查看应用程序的ID。 (1)、启动安卓模拟器,打开需要查看ID的软件界面。此处以google搜索界面为例。然后双击打开...

如何学习自动化测试软件自动化测试的学习步骤 大概步骤如下: 1. 做好手工测试(了解各种测试的知识)->2. 学习编程语言->3. 学习Web基础(HTML,HTTP,CSS,DOM,Javascript)或者 学习Winform ->4. 学习自...