专栏名称: OSC开源社区
OSChina 开源中国 官方微信账号
目录
相关文章推荐
程序猿  ·  患者带着DeepSeek来看病,医学博主自嘲 ... ·  2 天前  
程序员的那些事  ·  GPU:DeepSeek ... ·  2 天前  
码农翻身  ·  中国的大模型怎么突然间就领先了? ·  2 天前  
程序猿  ·  41岁DeepMind天才科学家去世:长期受 ... ·  3 天前  
程序员的那些事  ·  印度把 DeepSeek ... ·  5 天前  
51好读  ›  专栏  ›  OSC开源社区

测试拿起自动化测试工具,一场悲剧正在上演……|周一见

OSC开源社区  · 公众号  · 程序员  · 2017-01-09 08:28

正文


虽然之前小一做过几年开发,但当时对于在公司兴起的自动化测试概念还不是很清楚,觉得是一种很神秘的东西,后来通过向业内资深的测试工程师朋友咨询才恍然大悟。


其实自动化测试从 广义上来讲 ,即通过各种工具(程序)的方式来代替或辅助手工测试的行为都可以认为是自动化; 从狭义上来说 ,即通过工具记录或编写脚本的方式模拟手工测试的过程,通过回放或运行脚本来执行测试用例,从而代替人工对系统各种功能进行验证。


同时,小一也了解到目前自动化测试大致分为以下几类:

1.对Web UI 的自动化测试程序

2.对Windows 窗体UI的自动化测试程序

3.API测试, 比如(测试WCF service, Web API 等)

4.数据库测试, 比如测试存储过程

5.接口测试 (这种只能用自动化测)

6.单元测试

7.性能测试, 性能测试都需要用到自动化


今天小一为大家带来了各种开源的自动化测试工具,希望不但能够帮助小伙伴们快速的完成各种测试,而且在自己未来的职业道路一帆风顺!



1


基于selenium webdriver 自动化测试框架




项目简介: 这是一个WebUI自动化测试框架,由webdriver中文社区创办人土豆(本人技术笔名)所创建,该web自动化测试框架是用java语言编写的,基于selenium webdriver 的开源自动化测试框架,该框架结合了testng,selenium,webdriver,jxl,jodd-http 等工具。该框架基于页面对象模型(POM)架构,实现了关键字驱动技术,数据驱动,无需掌握多少编程知识即可编写脚本,同时实现了数据与代码分离的功能:

1、元素定位信息保存在对象库文件中 ;

2、测试用例数据可以存储在excel中。从而实现,页面元素位置变化,无需改动脚本,只需修改对应的元素定位信息即可。

该框架实现了检查点及用例失败自动截图功能,自动生成html测试报告及自动发送html邮件测试报告功能。


目前框架还不是特别完善,还需要写一些脚本实现自动化;学习该框架需要熟悉一定的HTML 和java基础,后续可以考虑自动编码的实现。


实现的功能:

1、XML管理元素对象信息
2、统一的操作API风格,action.操作(某个页面.某个元素())
3、数据驱动
4、关键字驱动
5、用例失败自动截图并展示到报表中
6、自动生成html报表,自动发送html邮件报告
7、用例串行一次性执行多个浏览器,可用于兼容性测试

项目地址: http://git.oschina.net/zhengshuheng/PatatiumWebUi


邮件展示如下:



日志文件展示如下:



2


maven 自动化集成测试



项目简介: 本项目是参考国外文章来编写的 Maven 自动化集成测试工具,可测试 Spring+SpringMVC+Hibernate 技术,也可使用 HttpClient 测试 SpringMVC 中 Action,同时增加统一验证功能,且数据可使用 hibernate 的自动导入数据功能。


项目地址: http://git.oschina.net/huanghuanlai/maven-integrated


3


基于python 实现的自动化接口测试



项目简介: 本项目是基于 python3 实现的 http 接口自动化测试,支持常见的 HTTP 中的 post 和 get 方法;测试案例驱动用 excel 管理,注意的地方是为每个案例新增自定义检查函数(更新为了生成器为 xml 管理);根据需要配置,可以运行部分用例,全部用例;测试结合最后生成了 html 文件,方便查看。


开发环境:

Win7 64,python 3,Pycharm. unittest

●读取配置文件--读取测试用例--执行测试用例--记录测试结果--生成html结果文件

模块类的设计说明:

Httpbase.py 读取http的域名和端口

● Config.py http方法的封装,可以支持多协议扩展,get,post

● Runner_m.py 核心代码。run_case是程序的入口

● Htmlreport.py 结果生成html文件

项目地址: http://git.oschina.net/ytbkun/auto_http_api


4


Phoenix Framework 自动化测试平台



项目简介: 集代码托管, 分机(node节点)管理,定时任务, 分布式或并发等方式执行通过 phoenix_develop 模块调试好的用例。


平台使用 SSH4 开发,覆盖了 webgui,接口,移动 mobile 等终端的测试与监控。 webGUI 模块兼容 chrome,Firefox,IE,httpunit 以及 phantomjs 驱动。原生支持对 FTPServer,svn,SocketServer,图片文字识别的操作, 深度集成了 Jmeter,支持 Web 性能测试。


平台通过 phoenix_develop 模块在客户端开发及调试代码, 然后通过将代码托管到 phoenix_web 控制端, 控制端通过指派多个 phoenix_node 端方式执行测试用例。 通过使用phoenix_develop 开发用例代码的示例, 用例如果在本地调试时没有问题,那么就可以放到控制端进行执行了。


项目地址: http://git.oschina.net/phoenixframework/phoenixframework




5


restful 接口的测试工具



项目简介: 目前大部分的 restful 接口测试工具,仅仅停留在验证接口响应是否正常,具体的业务是否正确需要靠人工来分析。人工分析势必比较耗时,而且随着项目的迭代,重复工作量的浪费比较严重。因此,考虑到接口的变动会较少,自动化接口测试将很有必要。


项目技术实现:

采用 HttpClient 实现接口的调用,支持 GET/PUT/POST/DELETE 方式,支持目前 Restful 接口规范常用的 Http 方法;

● 自动化脚本的编写采用 Cucumber 来实现,脚本编写的时候分为 Feature、Scenario 以及 Step。每个 Feature 下可以包含 N 个场景,每个场景下有 M 个步骤,和实际测试中的测试用例场景贴近;

● 结果验证采用 Javascript Engine,由于 Javascript 支持弱语言,因此在处理上兼容性会更好。

项目地址: http://git.oschina.net/zzq0324/restful-tester


6


基于 Android 的测试常用脚本




项目简介: 批量安装应用(支持以中文命名的 apk)、批量卸载、截屏、录制视频、获取当前应用的 apk 文件、包名、Activity 以及当前运行的应用的 cpu、memory 信息,默认 top times 取值为20次,可自己修改脚本中的该参数。


项目地址: http://git.oschina.net/xuxu1988/AndroidTestScripts


7


基于 Android 的自动化测试工具 MonkeyRunner








请到「今天看啥」查看全文