51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 13257|回复: 10
打印 上一主题 下一主题

Open API测试畅想

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-7-28 12:12:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
淘宝网新近开放了TOP平台,阿里软件的同事们根据平台测试的实践编写了《互联网单元测试及实践》,阿里巴巴技术部也在实现Open API给第三方开发商的项目,国内互联网公司Open API开放状况参考http://fairyfish.net/2008/07/16/chinese- open-api/。本月程序员杂志Open API大篇幅占据版面。chinaunix专门开辟openapi专栏 http://bbs.chinaunix.net/forum-137-1.html
   这些信息都表明,OPEN API是增强网站个性化、定制化的方式之一,将成为主流网站的一个趋势。

一种新的研发模式也必然对测试带来一定的影响。对于开放API的平台商而言,Open API本身的测试也会有自己个性化的特征。

(1) 安全测试要求更高。由于涉及关键数据众多,在用户输入验证、输出展现、安全交互、权限系统设计方面的要求更高。防止SQL注入、命令注入、XSS、缓冲区溢出、整数溢出等主要安全问题围绕整个软件生命周期。

(2) 流量、资源消耗、计费等监控粒度更加细致。

   从第三方开发商过来的请求流量设计方面必须足够聪明,做到有效控制DOS攻击。
   
   需要评估审核第三方开发商研发能力,加强对其管理。
   
   API调用需要大量计算资源,有效监控资源变化包括系统级别的资源(如CPU\IO\网路\内存\进程间通信\打开文件描述符、数据库的CRUD等)以及业务级别资源(页面响应时间、资源下载时间等),全方位的监控体系保证网站安全。

(3) 性能测试的需求更加迫切。
    大规模的应用访问会让系统感受到PV的强烈冲刺。
    一般应用程序关注用户访问模式,Open API更为关注API自身的调用频率。各种性能profile工具将发挥极致威力
          
(4)非常适合应用单元测试、应用代码覆盖以及做到daily build/test。

   由于提供给第三方开发商使用,其接口必然比较稳定,以及复用程度较高。从成本效益角度衡量,适合单元测试。同时借助代码覆盖率度量工具,增加测试用例。
   由于存在良好的单元测试代码,daily build/test体系建立将让BUG主动跳出来。
     
(5)demo应用程序以及API函数说明书。
   
   demo程序以及API函数说明书同样需要测试。第三方开发商借助这些demo应用程序以及API函数说明书才能有效发挥开放API的威力,由于分处两地,为了减少沟通成本,demo程序以及说明书应该相当详备。

(6) 部署模式测试。

   API部署范围不应局限于在PC/PC Serer上, Open API也应该部署在流行的google application engine平台以及Amazon AWS上进行测试,以满足不同层次的开发商需求。

(7)支持的开发语言调用测试

   针对Open API声称支持的各种开发语言对应的API都做测试。每种语言的数据类型都有差异,这个微小差异有时会导致致命的问题。
  
(8)架构设计文档本身的测试,核心代码尽早执行性能测试
   
    应该有资深的架构师尽早介入,评审关键应用的设计文档,在早期介入减少设计失误。

    核心代码尽早执行性能测试,避免后期大规模修改。
   
  欢迎各位朋友拍砖。

[ 本帖最后由 liangjz 于 2008-7-28 12:47 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2008-7-28 14:43:31 | 只看该作者
从成本效益角度衡量,适合单元测试。同时借助代码覆盖率度量工具,增加测试用例。
   由于存在良好的单元测试代码,daily build/test体系建立将让BUG主动跳出来。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2008-7-28 19:17:41 | 只看该作者
呵呵,daily build/test也是微软一向倡导并实施的研发模式
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2009-1-20 00:01:17 | 只看该作者
偶最近在实践了,^_^,考虑的问题和纬度比以前多了好多:)

比如1  多了解 参数组合,函数调用序列  2 国外也有了针对API测试的测试框架。。。
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2009-1-22 13:59:01 | 只看该作者
如果你有API,那单元测试和自动化的测试可以更好的进行了。

能否讲讲如何在应用的实现和数据的设计方面的关系。如何实现把复杂的应用放到数据设计中,而不是放到应用程序中,减少程序过多的接口,过多的workflow,过多的计算关系。
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2009-2-2 11:29:13 | 只看该作者
原帖由 liangjz 于 2008-7-28 12:12 发表
淘宝网新近开放了TOP平台,阿里软件的同事们根据平台测试的实践编写了《互联网单元测试及实践》,阿里巴巴技术部也在实现Open API给第三方开发商的项目,国内互联网公司Open API开放状况参考http://fairyfish.net/20 ...

俺现在就在做API测试,感觉前途还是挺光明的,
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2009-11-7 15:56:40 | 只看该作者
架构设计文档本身的测试,核心代码尽早执行性能测试
    应该有资深的架构师尽早介入,评审关键应用的设计文档,在早期介入减少设计失误。

liangjz 你就有能力做这个工作。开始可能生产率不高,但坚持做,就会越来越好!有时开发的架构师未必评审时会比你做的好。
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2009-11-9 10:06:32 | 只看该作者
同意楼主的说法
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2010-1-11 18:20:31 | 只看该作者
查了一天的OpenAPI的东西,但是具体怎么测试,可否举个例子呢?
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2010-7-16 14:15:00 | 只看该作者
原帖由 cain_1313 于 2010-1-11 18:20 发表
查了一天的OpenAPI的东西,但是具体怎么测试,可否举个例子呢?

也盼楼主能举个例子
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2011-5-4 16:11:43 | 只看该作者
也想知道如何进行API测试。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-22 07:01 , Processed in 0.073797 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表