如何通过代码分析精简用例

基础:

在企点项目中,PHP用的框架有TSF和YII。通过分析两种框架发现其实不论哪种框架其核心的思想都是MVC模式。这里不展开。

基于框架的特点,我们可以知道URL与代码的映射关系

比如:公海客户筛选请求

URL:xxx/cl/opensea/getCustList

代码文件:…/cl/controller/OpenseaController.php

函数:actionGetCustList

测试需求:

在客户库(公海/已归属/客户删除)中增加性别/年龄/地区/学历筛选项

代码分析:

公海、已归属、客户删除筛选函数的实现是一致的,且调用相同基础model的getCustList方法。接下来看代码后续的调用关系链来了解代码是如何实现页面类型区分

CstmBaseModel::getCustList  à  CustomerFilterModel:: get_filter_data  à  get_filter_sql

private function get_filter_sql($params) {

 $pageType = 1;

 if (isset($params['pageType'])) {

 pageType = intval(params['pageType']);

 }

…

}

到这里就比较明确了,是通过请求参数中的pageType来区分页面类型。1表示公海,2表示已归属,3标识客户删除。

结论:

通过以上分析可以发现,只需要覆盖其中一个页面筛选的全部用例,和其他两个页面的基础用例就可以达到完全测试的效果。这样用例大约可以缩减60%,大大提升测试效率。

思考:

通过以上也可以发现其实分析代码并不困难,主要是要培养分析代码的意识,不仅能提升自己对设计的理解,还能帮助测试事半功倍哦。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏前端安全

和XSS漏洞对抗的日子

前端安全日益受到业内的关注,最近笔者和团队在和XSS漏洞对抗的这段时间,总结了部分常见的漏洞和修复方法,下面将结合具体业务对这些漏洞类型进行分析。

34015
来自专栏开源项目

2017 JavaScript 开发者的学习图谱 | 码云周刊第 25 期

码云项目推荐 1前端框架类 1. 基于 Vue.js 的 UI 组件库 iView ? 项目简介:iView 是一套基于 Vue.js 的 UI 组件库,主要服...

3157
来自专栏小白课代表

百度有广告?电影没处下?网页不让复制?贴吧页面太丑?今天课代表全方位强化你的浏览器。

在百度搜索了某个问题却发现第一页都是广告?好不容易找到了一篇文档却发现不让复制?在豆瓣看到一个评分很高的电影,想看却找不到资源?看到一张图片还要打开才能看高清大...

942
来自专栏葡萄城控件技术团队

Webpack4干货分享(二),使用loader处理scss,图片以及转换JS

今天继续我们的Webpack 4入门教程。在介绍了Webpack的基本概念之后,是时候更深入一点了。这次我们会涉及Webpack中非常强大的一个东西:loade...

1142
来自专栏WeTest质量开放平台团队的专栏

Pluto - iOS 上一个高性能的排版渲染引擎

原文链接:http://wetest.qq.com/lab/view/369.html

5276
来自专栏一枝花算不算浪漫

Maven项目环境搭建实例.

3697
来自专栏游戏杂谈

cocos2d-x绑lua的开发环境

2013年是手游开发井喷的一年,也是手游市场竞争最为激烈的一年,ios市场除了刷榜、刷榜,还是刷榜,而android有点像黑市的感觉,水太深(很多渠道商已经从上...

593
来自专栏FreeBuf

使用Python以及C++简单绕过反爬虫机制

0x00 某些网站有反爬虫的机制 对于刚学习了几天python的我,对爬虫颇有兴趣,但是某些“想要的”网站上具有反爬虫机制,如果说使用延迟或者代理,这样的效率并...

22410
来自专栏无原型不设计

聊聊原型设计中的团队管理功能

在Mockplus3.3版本中,新增了团队管理功能,可以对团队成员、团队项目进行分组管理、权限设定。在团队成员管理上,可以编辑企业信息、邀请/删除团队成员、设置...

3467
来自专栏学海无涯

Android开发之社会化分享功能集成

现在越来越多的应用都集成了社交分享功能,国内用的比较多的就是 友盟和Mob 分享,今天以Mob分享为例,来完整介绍一个集成的案例。 1. 获取ShareSDK的...

3568

扫码关注云+社区