关闭

关于公司要不要设立测试的讨论

>> 不久前关于测试的讨论帖子上的发言   第一个问题,要不要专职测试员。如果推崇把质量作为企业的核心价值,我认为专职的测试是必须的,无论团队规模大小。这是质量和专业分工的关系决定的。做事情的人不能和监督的人是同一个人,打个不恰当的比方就是运动员不能是裁判员。可能有人会说,某某项目没有测试也做得不错,我相信,有这种情况。通常是开发员特别强,同时项目也不太大。但这就把质量押宝...
阅读(3523) 评论(4)

代码审查的对话

最近一个朋友和我在雅虎上讨论关于代码审查( Code Review),摘要贴出来: 朋友 : 你们对于代码也review么?朋友 : 呵呵。summerfang : 很密集summerfang : 我每个星期自己做3-4次朋友 : 现在我碰到的问题是,有些新手的注释不规范。朋友 : 这是要强制要求的是么?summerfang : 代码review是个好办法...
阅读(6284) 评论(2)

十条减少软件缺陷的真经

1、在项目发布后发现和修复Bug的成本是需求和设计阶段所需的一百倍!2、在时下的软件项目中大约有40-50%的人力都是花在可以避免的重复劳动中,避免重复劳动可以显著提高劳动生产率。3、80%可避免的重复劳动源自于20%的缺陷,其中两大主要来源包括草率的需求定制和象征性的案例设计和开发。4、大约80%的缺陷来自20%的模块,而约半数的模块是几乎没有缺陷。5、90%的软件的停工期最多来自于10%的缺陷...
阅读(11760) 评论(8)

SourceMonitor: 代码重构的小工具,大用场

我们在做代码重构时,最麻烦的问题是什么?各人有各人的答案。对我来说,找到哪一段代码需要重构是最大的麻烦。产品写好了,程序怎么样?怎么判断?我的标准是,最复杂的代码就是最需要重构的代码。对于由整个团队写的代码,全面阅读是不太现实的。开会?程序员最最不喜欢开会了!那可是个技术活。:)最近,我用了一个小工具,SourceMonitor,取得了意想不到的好效果。推荐大家使用。 Source...
阅读(21193) 评论(7)

PHPUnit袖珍指南 第十二章 测试的其他用途

 一旦你开始写自动测试,你就会想要发掘更多用途。以下是一些例子。 12-1. 敏捷文档通常来说,在采用敏捷方法作为开发流程的项目中,如极限编程,文档很难和迅速变化的项目设计和代码同步。极限编程要求集体拥有代码,应此,每个开发人员都熟悉整个系统。如果你严格按照规定,编写的类具有自说明能力,你就可以用PHPUnit的TextDox功能根据测试来自动生成文档。这种文档给开发人员对每个类的...
阅读(5577) 评论(3)

PHPUnit袖珍指南 第十一章 残根

 第十一章残根相比有多个错误来源的测试,只测试一件事情的测试提供了更好的信息。如何隔离测试的外部影响呢?用来自简单的PHP对象的残根替代昂贵, 杂乱, 不可靠, 缓慢, 复杂的资源。例如,为了单项测试的目的,你可以通过返回常数的方法来代表实际上很复杂的计算。 残根很好的解决了分配昂贵的外部资源的问题。例如,共享资源,在测试之间可以使用PHPUnit2 _ Extensions_Te...
阅读(5170) 评论(0)

开发和测试的两大难题:Regression Bug和Late Discovery Bug

什么是RegressionBug?Regression Bug,就是由于开发新特性或Fix Bug导致以前正常工作的特性罢工了。这种情况,通常出现在产品的开发中。 为了便于分析,Regression Bug又分为Release Regression和Build Regression。Release Regression指的是和上一个产品版本相比,出现的Bug。Build Regre...
阅读(6695) 评论(0)

Bill Gates计划退二线感想

今天一大早上网,发现Yahoo英文财务板块得头条就是Bill Gates计划退居二线得新闻。见http://biz.yahoo.com/ap/060615/microsoft.html?.v=10。大概内容是Bill Gates准备在两年后放弃微软的日常工作,集中精力在他的慈善事业上。他会把他的工作转交给他的三个CTO,特别是Ray Ozzie,另一个和他同年的技术传奇人物。微软,...
阅读(5362) 评论(4)

Sftp和ftp over ssh2的区别

最近使用SecureFx,涉及了两个不同的安全文件传输协议:-sftp-ftp over SSH2这两种协议是不同的。sftp是ssh内含的协议,只要sshd服务器启动了,它就可用,它本身不需要ftp服务器启动。ftp over SSH2则象一个二传手。 1、SFTP的工作模式:图1显示了SFTP的工作模式,它是作为SSH2的一个子服务工作的。图 1 SFTP工作模...
阅读(9149) 评论(0)

使用gFTP进行安全文件传输

 我有两台Linux工作机,一台(A)下载了很多软件,另一台(B)没有。今天,我突然需要在B上安装一大堆A上已经下载过的软件。因此,我需要将它们拷贝过来。A和B都有些安全设置,只允许通过ssh客户端访问。 如果重新设置两台机器是很麻烦的,因此,我用gFTP来解决这个问题。gFTP是开源的ftp客户端,安装Redhat9.0时如果选择全部安装,它就会出现在图1所示位置中。图 1 ...
阅读(6549) 评论(1)

中国首届敏捷大会纪行

谁也没想到,周三会停电。公司调整了工作日,也就是周六上班,以补周三损失的一天,这打乱了我参加首届敏捷大会的计划。不过我还是请了假。本来我请办公室帮我买好火车的往返票,结果办公室跑来告诉我,只能买到去的票。这可让我犯了难。我不想在北京过夜。我翻箱倒柜找出了一张Ctrip的卡,结果上了Ctrip的网站,转了半天也没发现可以帮助买火车票的! 算了吧,还是下火车就买回程票吧!我就这样有点忐忑不安的...
阅读(4304) 评论(0)

PHPUnit袖珍指南 第十章 代码覆盖率分析

 第十章 代码覆盖率分析你已经学会了怎么使用单元测试代码,但你怎么测试你的测试呢?你怎么发现没被测试的代码,换句话说,没被测试覆盖的代码?怎么衡量测试的完整性?所有这些问题的答案就是代码覆盖率分析。代码覆盖率分析告诉你当测试进行时,那些产品代码执行过了。 PHPUnit的代码覆盖率分析应用了Xdebug[6]扩展提供的语句覆盖率功能。 什么时语句覆盖率?举个例子来说,如果有一个方法...
阅读(8508) 评论(6)

CSDN博客工具配置部分存在Bug,导致不能加载Google搜索

一直想给博客主页加上一个搜索功能,方便搜索功能。于是注意到CSDN的配置板块可以输入公告。公告内容可以是HTML和Javascript,应该说,这应该具备了在博客主页加载Google搜索功能的基本条件。于是,按照以下步骤,企图实现不果,发现了CSDN的一个Bug。 步骤1. 登录CSDN的Blog书写工具,点击配置选项卡步骤2. 在公告中按照Google的指示输入如下内容:...
阅读(5142) 评论(2)

PHPUnit袖珍指南 第九章 测试优先编程

第九章 测试优先编程单元测试是几种软件开发实践和过程至关重要的部份,譬如测试优先编程,极限编程[3],测试驱动开发[4]。 单元测试也允许在结构上不支持的编程语言中支持契约式设计[5]。 [3] http://en.wikipedia.org/wiki/Extreme_Programming[4] http://en.wikipedia.org/wiki/Test-driven_d...
阅读(5253) 评论(0)

PHPUnit袖珍指南 第八章 未完成测试

第八章 未完成测试当开始书写新的测试用例类时,你也许想要从空的测试方法开始,譬如:       public function testSomething( ) {       }我们必须跟踪书写的每个测试。空测试方法的问题是,它们被PHPUnit 框架解释作执行成功。这样产生的测试报告是没有用的。您不能区分测试实际上是成功了或是未完成。在未完成的测试方法中调用$this->fai...
阅读(5175) 评论(0)

PHPUnit袖珍指南 第七章 测试异常和性能回归

第七章 测试异常和性能回归PHPUnit提供了二个扩展,基于测试类的标准基类PHPUnit2_Framework_TestCase,协助为书写异常和性能回归测试。7-1 异常怎么测试异常?当异常抛出时,无法直接使用断言。相反,必须使用PHP 的异常处理机制来书写测试。以下例子示范了入阁测试异常:require_once PHPUnit2/Framework/TestCase....
阅读(6950) 评论(0)

PHPUnit袖珍指南 第六章 装置器

第六章 装置器编写测试最耗时的部分是边编写设置整个程序到达一个已知状态,而后在测试结束后返回到原始状态。这个已知状态叫做测试的装置器。在例5中,装置器很简单,只是存储在变量$fixture中的数组。多数情况下,装置器会比简单数组复杂,设置代码也会相应增长。当你写几个类似的装置器时这个问题变得更糟糕。没有测试框架的帮助,我们不得不重复很多代码,为每个测试设置装置器。PHPUnit支持共享...
阅读(5875) 评论(0)

PHPUnit袖珍指南-第五章 命令行测试工具

第五章 命令行测试工具PHPUnit命令行测试工具是通过phpunit命令调用的。如下代码显示如何通过PHPUnit命令行测试工具运行测试。phpunit ArrayTestPHPUnit 2.3.0 by Sebastian Bergmann. Time: 0.067288 OK (2 tests) 对每个测试,PHPUnit命令行测试工具打印一个字符表示进程...
阅读(7911) 评论(1)

发现CSDN的一个Bug

今天上论坛,发现一个可能的Bug: 步骤:1、点击发表文章2、输入标题、正文和摘引等3、在高级选项中选中“仅在索引页显示摘要”4、发表并进入summerfang的专栏5、点击新文章 期望:出现刚才写的文章。 实际:出现一个出错页面显示: .Text - 应用程序错误!详细情况没有可用的错误信息。 返回站点...
阅读(4102) 评论(0)

PHPUnit袖珍指南-第四章 安装PHPUnit

第4章 安装PHPUnitPHPUnit可以通过PHP扩展和程序库(PEAE)获得。PEAR是可重用PHP组件的框架和分发系统。安装PHPUnit可以通过PEAR安装程序命令获得: pear install PHPUnit2 根据PEAR的版本命名标准,适用于PHP5的PHPUnit包称为PHPUnit2。PHPUnit是适用于PHP4的包,这在本书后面关于“在PHP4中使用P...
阅读(8328) 评论(0)
31条 共2页1 2 下一页 尾页
    个人资料
    • 访问:185470次
    • 积分:2107
    • 等级:
    • 排名:第18726名
    • 原创:13篇
    • 转载:5篇
    • 译文:13篇
    • 评论:41条
    最新评论