在上一节中,我们讲到吞吐量,做为一个用户你可以对吞吐量毫不关心,但响应时间却是用户感受系统性能的主要体现。 从用户角度来说,软件性能就是软件对用户操作的响应时间。说得更明确一点,对用户来说,当用户单
2013-02-05 10:03
741 查看
Holmos自动化测试框架是自动化测试领域的一个一条龙解决方案,由java语言开发,为以下问题提供解决方案:
(1)webtest模块:PC和移动端web端自动化测试,采用webdriver和seleniumRC作为此模块的底层,采用Page-Object模式组织页面结构,页面结构清晰,并且将业务流程代码和页面结构代码解耦,大幅度降低维护成本,所有的操作均被封装到了各种结构里面,完全面相对象式的编程模型,支持多维度定位页面元素,可以同时用多种方法定位一个元素,只要有一种定位方式成功,便可以成功操作,加上丰富的校验方法,以及详细的日志引擎,可以确定到一个确定的元素确定的操作的操作信息,提供了人性化的多页面操作,可以同时操作多种浏览器,支持各种主流浏览器的主流的操作系统平台,学习成本低廉
(2)reflectAssert模块:框架的高级反射校验模块,在webtest模块中,配有完善的校验方法,但是为了更加的方便大家的数据校验工作,这个模块实现了java对象的校验,所谓的对象校验就是,层层反射深入,到java的基础数据类型这一层,如果到这一层的信息相同,那么此两个对象就是相同的,令附一些特殊的校验,例如集合数组类型顺序是否考虑,某些元素是否只要非空就行等等
(3)dbtest模块:数据库单元测试模块,底层采用dbunit,实现了数据库的单元测试,在方法执行的前后对数据库进行操作,当然,也可以在方法里面直接调用对数据操作的接口,方法外的操作采用反射实现,此块的数据库数据在excel文件里面准备,支持excel97-2003和2007系列,2010系列暂不支持;支持大多数常见的数据库(mysql,Oracle,sql
server,DB2,Derby,HSQL)
(4)managePlatform模块:TC管理平台,TC从编写,转台更改,分组管理,增删改查,权限控制,B/S架构,与框架的继承测试模块无缝集成,发送运行结果等等
(5)regression模块:集成测试模块,此模块完成自动化脚本的回归运行,分组管理,展现,增删,权限控制,集成于TC管理平台模块,后台采用分布式集群运行,细化到方法粒度
(6) AutoSense模块: 一个采用FireFox内核的深度定制的浏览器,
通过鼠标点击网页上的元素, 自动生成该元素的xpath, css选择器等信息, 通过和holmos的结合, 自动生成holmos的测试case所需要的数据类. 也可以把选择的数据导出成json格式的文件, 供测试人员使用.
(7)框架集成模块:框架的各个模块在这个地方集成,提供基本的集成module模板,以及对模板的一些操作,对代码感兴趣的朋友可以看着一个模块,如果只是使用,这一块可以不看,这一块既可以说是框架的根基,也可以说是模块之间的粘合剂
现在已经实现的木块有四个:webtest模块,reflect模块,autosense模块,dbtest模块,其中前面两个模块已经上传到中央maven库,大家可以直接在pom文件里面添加依赖即可,autosense模块和dbtest模块也会相继发布,后面三个模块在这半年也会开发出来并且与大家见面
<dependency>
<groupId>com.holmos</groupId>
<artifactId>holmos-webtest</artifactId>
<version>1.0.2u4</version>
</dependency>
<dependency>
<groupId>com.holmos</groupId>
<artifactId>holmos-reflectAssert</artifactId>
<version>1.0.2u4</version>
</dependency>
复制代码
(1)webtest模块:PC和移动端web端自动化测试,采用webdriver和seleniumRC作为此模块的底层,采用Page-Object模式组织页面结构,页面结构清晰,并且将业务流程代码和页面结构代码解耦,大幅度降低维护成本,所有的操作均被封装到了各种结构里面,完全面相对象式的编程模型,支持多维度定位页面元素,可以同时用多种方法定位一个元素,只要有一种定位方式成功,便可以成功操作,加上丰富的校验方法,以及详细的日志引擎,可以确定到一个确定的元素确定的操作的操作信息,提供了人性化的多页面操作,可以同时操作多种浏览器,支持各种主流浏览器的主流的操作系统平台,学习成本低廉
(2)reflectAssert模块:框架的高级反射校验模块,在webtest模块中,配有完善的校验方法,但是为了更加的方便大家的数据校验工作,这个模块实现了java对象的校验,所谓的对象校验就是,层层反射深入,到java的基础数据类型这一层,如果到这一层的信息相同,那么此两个对象就是相同的,令附一些特殊的校验,例如集合数组类型顺序是否考虑,某些元素是否只要非空就行等等
(3)dbtest模块:数据库单元测试模块,底层采用dbunit,实现了数据库的单元测试,在方法执行的前后对数据库进行操作,当然,也可以在方法里面直接调用对数据操作的接口,方法外的操作采用反射实现,此块的数据库数据在excel文件里面准备,支持excel97-2003和2007系列,2010系列暂不支持;支持大多数常见的数据库(mysql,Oracle,sql
server,DB2,Derby,HSQL)
(4)managePlatform模块:TC管理平台,TC从编写,转台更改,分组管理,增删改查,权限控制,B/S架构,与框架的继承测试模块无缝集成,发送运行结果等等
(5)regression模块:集成测试模块,此模块完成自动化脚本的回归运行,分组管理,展现,增删,权限控制,集成于TC管理平台模块,后台采用分布式集群运行,细化到方法粒度
(6) AutoSense模块: 一个采用FireFox内核的深度定制的浏览器,
通过鼠标点击网页上的元素, 自动生成该元素的xpath, css选择器等信息, 通过和holmos的结合, 自动生成holmos的测试case所需要的数据类. 也可以把选择的数据导出成json格式的文件, 供测试人员使用.
(7)框架集成模块:框架的各个模块在这个地方集成,提供基本的集成module模板,以及对模板的一些操作,对代码感兴趣的朋友可以看着一个模块,如果只是使用,这一块可以不看,这一块既可以说是框架的根基,也可以说是模块之间的粘合剂
现在已经实现的木块有四个:webtest模块,reflect模块,autosense模块,dbtest模块,其中前面两个模块已经上传到中央maven库,大家可以直接在pom文件里面添加依赖即可,autosense模块和dbtest模块也会相继发布,后面三个模块在这半年也会开发出来并且与大家见面
<dependency>
<groupId>com.holmos</groupId>
<artifactId>holmos-webtest</artifactId>
<version>1.0.2u4</version>
</dependency>
<dependency>
<groupId>com.holmos</groupId>
<artifactId>holmos-reflectAssert</artifactId>
<version>1.0.2u4</version>
</dependency>
复制代码
相关文章推荐
- ucos ii的特点 1.ucos ii是由Labrosse先生编写的一个开放式内核,最主要的特点就是源码公开。这一点对于用户来说可谓利弊各半,好处在于,一方面它是免费的,另一方面用户可以根据自己的需
- 系统性能指标-响应时间-吞吐量-每秒查询数
- 性能测试:响应时间/并发用户数/吞吐量/思考时间的计算
- 操作系统与应用程序的关系 操作系统主要可以分为两大部分:内核和内核之外的一些程序。内核就是直接控制最底层的硬件,而我们日常所用到的软件,大都是通过内核之外一些程序与内核之间的接口完成的,例如WINDO
- 张孝祥老师交通灯管理系统的学习笔记 在做一件事时,首先要明确要达到什么效果。有目的性。就软件项目来说就是,首先要看的就是项目所提出的项目要求。做项目,不急于写代码,先把问题搞清楚,把要求分
- 吞吐量(Throughput)、QPS、并发数、响应时间(RT)对系统性能的影响
- 吞吐量(Throughput)、QPS、并发数、响应时间(RT)对系统性能的影响
- 吞吐量(Throughput)、QPS、并发数、响应时间(RT)对系统性能的影响
- 系统性能指标:广义并发、狭义并发、吞吐量、平均响应时间、TPS、IOPS
- 这段时间开发了一个共享软件,主要做IP资源管理的(SmartIPView),大家有兴趣可以看看,或给指点指点
- 异常信息:CLR无法从COM 上下文0x645e18 转换为COM上下文0x645f88,这种状态已持续60秒。拥有目标上下文/单元的线程很有可能执行的是非泵式等待或者在不发送 Windows 消息的情况下处理一个运行时间非常长的操作.这种情况通常会影响到性能,甚至可能导致应用程序不响应或者使用的内存随时间不断累积
- 吞吐量(Throughput)、QPS、并发数、响应时间(RT)对系统性能的影响
- 吞吐量(Throughput)、QPS、并发数、响应时间(RT)对系统性能的影响
- 我们用整整三年时间,建成了一套软件:用户定制系统(UD)
- 今天在Mac机器上使用了Flex Builder编辑了一个源代码文件,保存后使用vim命令去打开时发现系统自动在每一行的结尾添加了^M符号,其实^M在Linux/Unix中是非常常见的,也就是我们在Win中见过的/r回车符号。由于编辑软件的编码问题,某些IDE的编辑器在编辑完文件之后会自动加上这个^M符号。看起来对我们的源代码没有任何影响,其实并不然,当我们把源代码文件Check In到svn之类
- 吞吐量(Throughput)、QPS、并发数、响应时间(RT)对系统性能的影响
- 你就是一个画家!你现在想绘制一幅画,但是你现在没有足够颜色的颜料。为了让问题简单,我们用正整数表示不同颜色的颜料。你知道这幅画需要的n种颜色的颜料,你现在可以去商店购买一些颜料,但是商店不能保证能供应所有颜色的颜料,所以你需要自己混合一些颜料。混合两种不一样的颜色A和颜色B颜料可以产生(A XOR B)这种颜色的颜料(新产生的颜料也可以用作继续混合产生新的颜色,XOR表示异或操作)。本着勤俭节约的
- 吞吐量(Throughput)、QPS、并发数、响应时间(RT)对系统性能的影响
- 模态窗口其实就是在当前窗口调用系统的消息循环,响应用户的操作,将相关的消息发送到对应的窗口(转)
- 有学生提到,在大学选课的时候,可以写一个“刷课机”的程序,利用学校选课系统的弱点或漏洞,帮助某些人选到某些课程。或者帮助用户刷购票网站,先买到火车票。这些软件合法么?符合道德规范么?是在“软件工程”的研究范围么?