博主简介: 八年软件测试,五年测试管理,熟悉电商/支付/证券方面测试,研究性能,安全,自动化等测试技术;目前从事互联网金融证券测试!

发布新日志

  • 我答:51testing软件测试每周一问:软件测试过程改进的内容和注意事项有哪些?

    2008-10-08 17:57:52

    [原创]我答51testing每周一问?软件测试过程改进的内容和注意事项

       软件开发过程的质量决定了软件系统的质量,同样软件测试过程改进的质量决定了测试的质量和效率。其中,测试技术解决了测试采用的方法和技术问题,测试管理保证各项测试活动的顺利开展。然而,对于一个工程而言,过程也就是生命周期,也会至关重要地影响着生产效率和软件质量。测试工作有其本身的周期。测试过程从产品的需求阶段开始,此后,与整个开发过程并行开展,换句话说,伴随着开发过程的每一个阶段,都有一个重要的测试活动。

    以下主要用一个示意图来描述软件测试过程改进相关流程及信息流走向:  

    软件测试过程改进框架图:

     

    软件测试过程改进实施步骤。
    1
    确定测试过程改进目标:确定在一段时间内达到的测试过程改进目标;
    2
    对比分析测试过程改进差异点: 把所要改进的测试过程要达到的目标与目前的测试过程作比较,找出存在的差距。

    3制定软件测试过程改进计划:俗语说“凡事预则立,不立则废“。制定测试过程改进亦是如此!
    4
    建立跟踪控制机制:测试过程的改进的需要建立相应跟踪,最好应由专人来负责,定期定时定点输出相应记录信息!
    5
    实施测试过程改进策略:制定了测试过程改进计划,应去执行具体的流程操作。然后要注意评审和验证,定期定时定点监控,采集测试过程改进度量数据。
    6
    反馈总结再总结:总结测试过程实施过程中的经验,然后修改调整项目计划及实施改进的策略。

    软件测试过程改进的内容,对于此问题,由于不同的公司软件研发力量,人员配置等不仅相同,所以用下图所示列出了一个提纲,可以给大家参考:

     

    软件测试过程改进注意事项:

    1 获得管理部门支持;

    2 确定测试过程“基线”,明确度量的参考数据;

    3 制定合量的度量指标;

    4 考虑测试过程改进范围大小,应结合公司实际情况;

    5 监控过程的并进行改进;

    6 相关培训及支持工作;

    7 “持之以恒”,过程改进的效果通常都是需要一定时间及数据才能说明问题。

    原始链接:http://www.cnblogs.com/mayingbao/archive/2008/10/08/1306530.html

  • [原创]如何在Windows下安装Bugfree2.0.0.1

    2008-09-09 14:12:49

    [原创]如何在Windows下安装Bugfree2.0.0.1

    在安装BugFree之前,需要首先安装Apache, PHP, Mysql支持软件包,例如XAMPPEASYPHP等。
    下面以XAMPP为例进行说明。

    1 访问http://www.apachefriends.org/zh_cn/xampp.html 下载并安装最新的XAMPP版本。比如我下载的是:xampp-win32-1.6.7-installer.exe

    2 安装“xampp-win32-1.6.7-installer.exe”采用默认方式,一直“下一步”操作即可;

    3 下载BugFree2.0.1安装包,解压后复制到XAMPP系统的htdocs子目录下,比如我的安装目录为:C:\xampp\htdocs\bugfree

    4 接下来修改配置文件“Include/Config.inc.php”,打开bugfree的安装目录,复制文件Include/Config.inc.Sample.php 为新文件Include/Config.inc.php,编辑新创建的文件,修改数据库链接设置:

    ------------------------------------------------------------------------------------------------

    /* 3. Define the username and password of the BugFree database. */

    $_CFG['DB']['User']        = 'root';          // 数据库登录用户名

    $_CFG['DB']['Password']    = '';             // 数据库登录用户密码

    $_CFG['DB']['Host']        = 'localhost';     // 数据库服务器地址

    $_CFG['DB']['Database']    = 'bugfree2';    // 指定BugFree数据库名称

    $_CFG['DB']['TablePrefix'] = 'bf_';            // 数据库表前缀,默认为bf_。除非有冲突,不建议修改或为空

    $_CFG['DBCharset']         = 'UTF8';        // 数据库编码设置,保留默认值

    ------------------------------------------------------------------------------------------------------------------

    以上我采用默认方式^_^

    5 在浏览器访问http://192.168.42.94/bugfree。如果设置的数据库不存在,按照提示创建数据库,再点击继续安装

    6 点击“安装全新的 BugFree2”

    7 安装成功后,显示首次登录的默认管理员帐号和密码,按照提示首先使用默认管理员用户名和密码登陆BugFree(默认管理员帐号:admin 密码:123456);

    如果你按照上面安装,相信安装BugFree是哪么样的轻松!

    哪么什么是BugFree呢?

     

    BugFree是借鉴微软内部Bug管理工具Product Studio,基于Browser/Server架构,免费且开发源代码的缺陷管理系统。BugFreePHP语言和MySQL数据库实现。服务器端在LinuxWindows平台上都可以运行;客户端无需安装任何软件,通过IEFireFox等浏览器就可以自由使用。

    BugFree 2.0 BugFree 1.1的基础上,集成了Test CaseTest Result的管理功能。具体使用流程是:首先创建Test Case(测试用例),运行Test Case产生Test Result(测试结果),运行结果为FailCase,直接创建BugTest Case标题、步骤和Test Result运行环境等信息直接复制到新建的Bug

     

    如果你对Bugfree感兴趣,你可以参考以下网站:

    http://www.bugfree.org.cn/   自由软件 BugFree

    http://www.bugfree.cn/    开源管理工具BugFree

    如果你想了解更多测试相关知识,请访问我的Blog:

    http://www.cnblogs.com/mayingbao/ (卖烧烤的鱼测试博客

     

  • 我答:51testing软件测试每周一问:如何建立测试知识库?

    2008-07-18 15:48:26

    我答:51testing软件测试每周一问:如何建立测试知识库?

    1 测试知识库建立的作用应贯穿到测试人员头脑中,要相信集体的力量是无穷的!
    2 建立合理的考核制度在测试知识库上面,做为测试经理,考核测试人员不应仅看Bug,可以参考我以前在51testing上发表的贴子,如果仅有流程
    而没有相应的考核制度,我相信测试知识库仅是空中的阁

    PS:[原创]如何有效的考核测试人员  卖烧烤的鱼51testing Blog:http://www.51testing.com/?uid/26684
    3 请上级领导支持,提供相应的资源,如所需人力,物力费用等,要做就要做的漂亮,提出自己创新意见其实也是将测试的地位提升
    4 划分合理的测试知识库内容,如目前我为所在公司开发的类似测试知识库的目录结构,见下面:

    5 结合适合公司流程的简单易行的方法,可以参考以下几种:
    5.1 建立一个wiki,划分测试知识库
    5.2 建立一个测试技术论坛
    5.3 简单易行的共享文件目录
    5.4 轻量级的配置管理工具cvs,vss等
    5.5 中量级的辅助工具如:用lotus开发相应的模块,如:测试理论文章的创建,上传,编辑,删除等,事先需和测试人员达成共识,制定相应的流程
    5.6 重量级的专业软件如:购买相应的软件如imb的测试工具配套在一起,好像钱太多了
    6 确定知识库的更新策略,定期检查,使测试知库赋予生命力
    7 值得一提的是“测试知识库“不应仅扣“测试”二字,应是和测试相关的内容均建立起来
    最后列举下我建的测试知识库中一些目录,如文档模板目录明细:
    再列举一下,测试环境搭建清单模板内容,其实这些内容均是我所在的公司,我负责组织相关测试人员共同知识的结晶,集体的力量还是牛!
    内容我贴在卖烧烤的鱼测试博客:http://mayingbao.cnblogs.com上仅部分http://www.cnblogs.com/mayingbao/archive/2007/12/06/985755.html

    附件

    testk1.gif (9.16 KB)

    2008-7-18 15:45

    testk1.gif

    testk2.gif (11.5 KB)

    2008-7-18 15:45

    testk2.gif

  • 我答:51testing软件测试每周一问:常用软件缺陷预防技术和缺陷分析技术有哪些?

    2008-06-30 09:51:55

     

    51testing每周一问:常用软件缺陷预防技术和缺陷分析技术有哪些?

    http://bbs.51testing.com/viewthread.php?tid=117496&extra=&page=1

    一 缺陷分析技术:
    1 利用缺陷来源和发现阶段矩阵分析:缺陷来源和发现阶段,构造矩阵,跟踪软件开发各环节,目的是找到项目中最需要改进的环节,当然是缺陷数量和严重性比较多的地方;
    2 利用缺陷分布在项目模块分析:将产品化分为各模块,分析具体模块的数据,找出影响产生质量关键的模块;
    3 利用缺陷分类来进行缺陷的根源分析, 对于测试出来的BUG进行缺陷分类,按照缺陷的类型分布,找出那些关键的缺陷类型,分析其产生的根源;
    举个例子:
    以前公司项目利用此方法分析,系统中问题多产生在”接口“原因造成,最后我和经理与相关人员沟通确定”接口评审策略“,“接口变更策略”,“接口文档编写CheckList”等,从哪以后项目接口问题减少了很多!
    所以缺陷分析应是这样去做,发现具体的原因,需要制定相应的流程改进,这才是我们真正需要的!
    4缺陷趋势报告:按各种状态将缺陷计数作为时间的函数显示,如缺陷数量在整个测试周期的时间分布,此方法比较实用于项目测试过程中或是回归测试中
    5 缺陷年龄分析:缺陷活动状态的时间,分析一个缺陷处于某种状态的时间,了解处理这些缺陷的进度情况,通常情况我是结合缺陷严重性一起分析,因为我上面的技术总监更为关心的项目中存在多少严重问题,是否可以上线;
    6 借用缺陷工具分析,推荐像TestDiretor,JIRA等工具

    二缺陷预防技术
    1 与项目中相关人员达到共同“认识”,什么是缺陷?常见的缺陷有哪些?缺陷的危害,也许有人会问为什么将些列举在最前面,因为假如你的团队工作人员对缺陷都没一个清醒的认识,你认为预防二字如何谈起?
    2 缺陷预防应从软件生命周期开如,一个字“早”,测试应早介入,当然从需求->构架->设计->编码->测试等环节入手,渗入不同的测试方法和技术
    3 借用对已有缺陷进行分析,例如我上面的介绍的项目“接口”缺陷很多的问题,最后分析通过改进流程及方法,最终将缺陷减少了许多
    4 最后特别注意一点,缺陷预防应采用好的工具收集数据分析,如Bug管理工具,需求管理工具,变更管理工具,只有有效的数据,才能真实的度量出我们的项目真正的本质,只有这样才能有可信只处^_^

    欢迎访问我的博客:卖烧烤的鱼测试博客 探讨软件测试 软件测试架构 测试流程 测试过程改进 测试管理 需求管理 缺陷管理 配置管理 项目管理 性能测试 安全性测试 可用性测试 可靠性测试 LoadRunner 易用性测试 敏捷测试 快速测试 软件质量保证 质量度量
    http://mayingbao.cnblogs.com

    [ 本帖最后由 卖烧烤的鱼 于 2008-6-20 16:36 编辑 ]

  • 我答:51testing软件测试每周一问:如何设计或者挑选有效的回归测试用例?

    2008-06-30 09:45:10

    我答:51testing软件测试每周一问:如何设计或者挑选有效的回归测试用例?

    如何设计或者挑选有效的回归测试用例?(08-05-23)
    http://bbs.51testing.com/thread-115662-1-1.html

    最近刚到新公司上班,面临的比较突出的问题是人力紧张,由于公司的产品用在Windows mobile,MTK,Kjava,Symbian,website几部分,测试人员<5(+上我),如何高效的组织测试团队确实是个挑战?回归测试属于软件测试环节比较重要的部分,所以花费了一些时间总结此文,希望能给测试人员稀少,产品或项目众多的公司,提供一些建议:
    也欢迎大家来的我的博客探讨软件测试:卖烧烤的鱼的测试博客:http://mayingbao.cnblogs.com/

    所谓回归测试,即就是在软件生命周期中,只要软件发生了改变,就可能给该软件产产生问题;所以,每当软件发生变化时,
    我们就必须重新测试现有的功能,以便确定修改是否达到了预期的目的,检查修改是否破坏原有的正常功能。
    其实仅单纯从英文单词Regress很好理解:return to a worse or less developed state.即是退化,衰退的意思,
    检查软件从正常的稳定状态退化或是衰退到不正常工作的不稳定状态。

    注意:回归测试不仅仅是针对在系统测试阶段,而是在软件生命周期中^_^

    如果以上的定义均明确后,有效的回归测试应从这几方面:


    其实最有效的回归测试方法建立在开发测试库的基础上;开发在创建测试库,每次生成程序的新版本时都可以运行这些用例。  
    只有有效的从源头避免风险才能有效的进行回归测试(目前国内的公司,能从事此级别的,太少)

    1 强调单元测试时加强回归测试,引入代码评审,引入自动测试;
    2 集成和系统级的测试时,加强测试用例评审,回归测试用例的选择;

    具体的选择可以参考以下几点:
    1 开发设计测试用例时制定优先级,如高,中,低,方便以后自动化或是策略选择;
    2 配置管理时,引入测试用例基线管理,有效管理测试用例;
    3 定期维护测试用例增,删,保持最新状态;


    回归测试时需考虑效率和覆盖度有效配合,通常的策略有以下几种:

    基于风险选择测试:
    哪些功能是软件的特色?
    哪些功能是用户最常用的?
    哪些功能出错将导致用户不满?
    哪些程序是最复杂、最容易出错的?
    哪些程序最容易扩散错误?
    哪些程序是开发者最没有信心的?
    备注:只有有效的避免最大的风险,用户反感的问题,回归测试可以说达到了70%任务!

    基于Regress衰退概念的测试:
    开发人员修改的局部程序时,可能已经处理了症状,所以主要测试其被改变的模块和它的接口上;
    但是也可能存在未触及到根本原因,所以需要测试周边程序及相互依赖性的部分;
    错误本身可能得到了修复,但修复也可能造成其他错误,所以有必要为每个修复的错误,设计回归测试。

    基于全面测试策略:
    如果时间充足,资源齐全,可以进行全面测试,最低的遗漏回归错误的风险,但测试成本最高,非上策!

    其它的回归测试:
    1 基于GUI方式的自动化回归测试技术
    2 基于Ad Hoc 回归测试:增加随机测试,避免回归测试肓点
    备注:Ad Hoc Testing可参考:卖烧烤的鱼的测试博客:http://www.cnblogs.com/mayingbao/archive/2006/04/25/384160.html
    3 基于交叉测试:多人互动的回归测试,尤其在核心的功能点,交互性比较的

    [ 本帖最后由 卖烧烤的鱼 于 2008-5-26 16:53 编辑 ]
  • [原创]如何有效的考核测试人员

    2008-06-26 16:33:30

    [原创]如何有效的考核测试人员

        当前国内很多公司对测试存在普通的认识不足,经常听到许多公司拿Bug的数量来考核测试人员的唯一方法,哪么我要说“测试人员的考核不是仅仅看Bug的!"
       
        如何有效的考核测试人员?好的考核能激励测试人员,提高工作效率;相反“不公正”的考核,则会降低工作效率,引起测试人员的不满!本文作者以实际的测试管理工作经验
    结合当前公司的特点制定了以下措施,相信肯定有很多测试人员会产生共鸣!
      

    1 工作态度
      通常由“协作性”,“积分性”“责任心”三部分组成,每部分为4档:优秀,良好,合格,差

    2 对公司产品业务流程了解程度
      通常分为4档:精通,熟悉,了解,不清晰

    3 测试技术(手工+自动化)
      通常分类“手工测试”和“自动化测试”,其中两个大类又细分技术难度为:难,一般,容易

    4 依据不同职位考核
      通常初级,中级,高级,测试组长等是依据职位的定义性质不同来考核,每个职位等级分为"优秀",“良好”,"合格","差":
      如初级测试工程师重点考查“Bug”的数量和严重性,用例的编写覆盖,Bug Report的规范性等
     
    5 测试文档
      编写用例个数/修改用例个数,测试用例覆盖度,新增用例个数,用例的难度
      编写测试报告的质量,通常分为"优秀",“良好”,“合格”,“差”几等

    6 Bug数据
      通常用发现Bug的(数量,有效和无效,发现/解决比率,运营/测试环境数据评比)

    7 测试是否尊守流程
      通常分为(优,良,合格,差)

    8 团队贡献
      通常这项做为激励大家,如XXX人兄给大家培训“httpwatch工具”,依据培训效果分为"优秀",“良好”,“合格”,分别对应相应的分值。
      如小马哥给部门建议XXX项目需求评审Checklist.doc,这些均可
    以上仅仅是考核的几个大的方面,当然在实施具体考核过程中,还需结合公司具体的要求!  

    http://www.cnblogs.com/mayingbao/archive/2006/11/26/572954.html?updated=1

Open Toolbar