加入收藏 | 设为首页 | Life家族 | SCMLife | RMLife | PMLife | SQALife | TESTLife | 企业VIP专区 | 中文化荣誉殿堂
 
发新话题
打印

[原创] 软件测试之独孤九剑( 此文章被查看:13307次,被回复:187篇!! )

本主题由 懂你 于 2008-7-27 17:29 置顶
引用:
原帖由 aries_duan 于 2008-8-1 22:40 发表
哈哈,懂你兄一眼就看出症结所在了,其实没有把其他人回答问题列出来是因为俺当时还没有特别仔细的想出怎么写他们的回答呢,也有人和我说过这个观点。呵呵,很快俺会把这段补上的。
呵呵,过奖了,我觉得这段还是详细说说比较好。
可以找些做过测试的朋友问问他们,看看他们都怎么回答,然后来归纳提升到小说中的人物形象中。
其实就是在这种舌战中,人物的形象才得以完美的,才真真正正让我们感觉到他们是一个个鲜活的人。

期待你的完善篇。

© 本文为 懂你 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
优惠购买Rational,Telelogic,Hansky产品,企业VIP服务、实施
VIP服务电话:13581809377

TOP

回复 66# 的帖子

那好歹也得给劳安排个红颜知己什么的

玩笑了,千万别因为这个要求打乱了你的创作思路。

© 本文为 Quest 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

最后一段已经应大家要求修改,将每个人的说法都写了上去,希望能更好的表达人物的个性。

谢谢大家对这篇小说的支持。

© 本文为 aries_duan 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

其他人都就两条禁令说了自己的想法,但令狐冲没有,只讲到禁令就结束了,看不出是怎么处理这个问题的。

© 本文为 scmscmscm 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

这次实习资格的考试,像选秀大会一样引起了校园里的高度关注。几位胜出者,也获得了像明星一样的待遇。令狐冲走在校园的路上,总感觉有人在关注他,还有人在他背后偷偷议论,“快看快看,这就是今年被选中参加福威集团实习的优秀学生代表,他的计算机水平可厉害了”。
这种状况让令狐冲暗爽了很久,看到任何事情都会让他产生一种莫名的优越感。有时他还会偷偷的练习一下签名,担心如果有他的粉丝出现的时候无法把自己的名字飘逸的写出来。以前的酒友陆大有现在很难得能和他喝酒聊天了,每次约他他都在图书馆或者在实验室里。但据内线爆料,令狐冲在图书馆的时候,手里虽然拿着一本书,但是从来没见他打开过。在实验室,他所做的最多的也是在低年级的学弟学妹面前,为他们解答一些初级的问题,俨然一副导师的样子。

这次实习虽然是古龙带队,但是风清扬作为顾问也需要和福威集团进行一些沟通,所以随大队一起踏上了开往福州的火车。和一群大学生一起坐火车唯一的好处就是漫长的旅途不会太寂寞。少男少女特有的精力充沛再加上窗外美丽风景的刺激让这几个人格外活跃。这其中最活泼的要数令狐冲和岳灵珊了,一会闹着要打斗地主,一会又要下车去站台上买土特产,连向来腼腆的仪琳都在这氛围的感染下话也多了起来。仪琳问起了风清扬有关项目的事情:“风教授,这次我们去参加的项目,到底是怎么样一个情况呢?”
“福威集团这次聘请的两家测试机构一个是具有官方背景的软件评测中心,另外一家就是我们将要在里面进行实习的太阳花软件测试工作室。这个工作室的技术总监是你们岳院长的一个学生,在校期间成绩优异,毕业后就去了天竺的一家软件公司上班,前几年自己成立了这家公司。”
听到风教授介绍项目情况,大家都凑了过来,狭小的车厢显得更挤了。岳灵珊攀着令狐冲的肩头,努力的把头伸出来,生怕漏了什么细节。可令狐冲却因为她这个暧昧的动作,头脑一阵眩晕,好几句话都没听见。
“太阳花公司这次接到的任务是对物流系统进行整体的系统测试。系统测试的定义,我想大家应该都是很清楚了。”
“系统测试是指将通过集成测试的软件系统或子系统,作为基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素组合在一起所进行的测试工作;目的在于通过与系统的需求定义作比较,发现软件与系统定义不符合或与之矛盾的地方。”段誉抢在令狐冲前面背出了这段定义。
“没错。那谁能说说系统测试的目的是什么呢?”
“发现尽可能多的缺陷”令狐冲终于抢到了一个回答的机会,但是看看风教授似乎不是很满意,马上补了一句,“并且督促研发人员改正。让最终发布的软件中存在的缺陷尽可能的少。”
“恩,后面一句补的够及时。那到底什么是缺陷呢?缺陷的判定标准又是什么呢?”风清扬的目光转向了仪琳。
“根据系统的需求定义来确定缺陷。当系统的实现和需求定义产生矛盾时,我们就把它认定为缺陷。”仪琳似乎也比以前有自信了,说话声音大了很多。
“理论上的确如此。但是现实的情况往往比理论复杂的多。实际的项目中,需求的详细情况可能并非我们想象的那么具体,那么富有指导性。很多时候,软件在需求阶段只是提供了一些方向性的内容。实现的细节是在设计和编码阶段才会得以确定的。对测试来讲,从需求方面,你可能只能得到一些关于功能模块的划分,一些业务流程的解释和一些不足以进行测试的技术性细节。”
“那这就是为什么您会选我这个非计算机专业的人来参加这次项目的原因了。因为我对物流的业务流程有一定的了解,能在文档不完整的情况下进行合乎逻辑的判断,从而推测该软件运行的是否正常。”段誉此时完全没有了呆气,头脑清楚之极。
“是的。作为测试人员,特别是系统测试人员,是一定要对业务的流程有足够的认识的。因为毕竟系统测试是要从用户的角度出发来考虑问题,当你不具备用户所具备的知识的时候,如何谈得上去揣测他的行为和动作呢?所以我们这几天的主要工作就是对福威集团的物流系统的运作进行了解。古龙,把林总给我们的资料发给大家。路程快走了一半了,大家放松的也都差不多了,后面一半的路程,大家多看看资料吧。”

© 本文为 aries_duan 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

到了福州,刚出了站台,便有一位西装笔挺的青年人迎上前来。“风教授,多年不见,您还是风采如昔呀。当年您在学校里开设的软件测试的艺术的选修课,可是影响了一大批学生呀。我正是因为您的感召,才跑去天竺专门去做软件测试的呀。”风清扬也赶忙握住了青年人的手“呵呵,你们岳教授常说,林平之是个百年难遇的天才,如果当时毕业你能留在他身边继续学习,现在肯定也是开发方面的一个高手了。不过这样也好,我们国家的开发高手太多了,相比来讲,测试界更缺你这样的人才呀。”
令狐冲几个也都在上下打量着这个传说中的青年才俊。高高的个子,白净的皮肤,整洁的西装,怎么看怎么像一个电影明星,和他们心目中的技术高手有挺大的差距的。不知怎地,看着岳灵珊盯着他的那种热切的目光,令狐冲心里有种说不出的滋味。连风清扬为大家介绍林总时,令狐冲的反应也是冷冷的,全无热情,眼中只有显得异常兴奋的岳灵珊。

林总为人非常热情,晚上特地请他们去福州有名的小吃一条街大快朵颐。得知岳灵珊是岳不群的掌上明珠时,林平之更是格外殷勤,不停的向岳灵珊介绍闽南的风物,还时不时的教大家几句普通话版的闽南语,逗得大家笑个不停。只有令狐冲一个人低着头,一声不吭。其实林平之无论从形象还是待人接物,都令人无法对其产生恶感,可令狐冲就是看着他,却怎么也喜欢不起来。特别是岳灵珊凑在他跟前,和他有说有笑,细语喁喁的时候,格外让令狐冲觉得此人面目可憎。

© 本文为 aries_duan 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

呵呵,76楼这段是要开始情战的开端啊,不知道有这样的情敌,对令狐冲的测试水平是否有更大的进步还是退步呢?

© 本文为 懂你 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
优惠购买Rational,Telelogic,Hansky产品,企业VIP服务、实施
VIP服务电话:13581809377

TOP

几天的培训之后,几个实习生作为太阳花公司的外派测试人员被安排到福州大学内福威集团的一个研发基地里。这个研发基地的研发经理王经理和林平之关系不错,林平之特地让他关照下几个实习生,所以这几个人在研发基地里还算颇受欢迎。但是令狐冲心里却始终抹不去对林平之不好的印象,不想过分承他的情,心里总是憋着一股劲,想在工作中做出点什么成绩。
令狐冲负责测试的模块是物流系统中的运输管理模块。顾名思义,是对物流企业中货物的运输状态进行追踪的一个模块,包括接单、澄清、调度、装车启运、在途跟踪、到达卸货、回单管理等几项主要功能。其中接单和回单模块需要和CRM,仓管,财务等模块接口,所以王经理派了一个有多年经验的测试工程师来协助令狐冲。王经理给令狐冲介绍时,那个工程师却不正眼看令狐冲,目光却总是在仪琳身上扫来扫去。仪琳为人腼腆,便转过了身去,令狐冲也赶忙迎了上来,两个人这才开始寒暄。
“您好,我叫令狐冲,是华山大学的实习生,这段时间的实习请您多多关照。”
“没事、没事,大家都是混碗饭吃。我叫田伯光,是负责整体系统测试的,各个模块我都测试过,有什么事情尽管找我。对了,你们住哪呀?”
“就住在福大里面,我们校长找熟人给安排了两间宿舍。”
“那就方便了。我也住在学校附近。我孤家寡人一个,平时也无聊,找你们去玩玩你们还欢迎吧?”
“当然、当然了。我们两个宿舍挨着,您有空去找我们玩好了。”令狐冲很高兴这个看起来热情的有点过头的前辈乐意和他们交往。从那个时候起,田伯光就成了令狐冲和段誉宿舍里的常客。在田伯光的帮助下,令狐冲的工作进展很快,很快测试到了运输管理的核心模块----货物状态追踪。
货物状态追踪的业务要求是:每一笔货物的状态分为两大部分“地点信息”和“状态信息”。地点信息是表示货物到达了哪个转运站,状态信息表示的是该货物在此转运站的状态是入库,还是卸车中,还是已经装运等待运输。但是因为每一个转运站隶属于不同的货运公司,可能使用的是不同的管理软件,状态的命名也并不相同。所以需要测试所有的转运站的所有状态变迁情况。
这可是个艰苦的工作,涉及到的转运站有1000多个,分别隶属于20家不同的货运公司,货物状态有15种,要想进行全覆盖测试,需要运行1000*20*15=30万次用例。令狐冲觉得这是个不可能完成的任务。正在一筹莫展,田伯光踱了进来,“令狐,晚上我们去安泰路玩玩吧,那里可是福州漂亮美眉的集中营呀。”
“别提了。我这个测试用例要运行三十万次,得把我累死。你自己去好了,等我测完了,估计安泰路的美眉们的小孩都能打酱油了。”令狐冲有气无力的回绝了田伯光。
“来,让我看看。还有什么测试需要这么麻烦的。”田伯光凑了上来看了一下。“原来就是这个问题呀,包在我身上了。不过有个条件,你得帮我把仪琳约出来去看电影!”
“呵呵。行呀,只要你能搞定这个,别说约仪琳看电影,吃晚饭都没问题!”

“我们先来分析下这个测试。按照你的测算,要想完成全覆盖,所有的不同条件组合起来需要30万次。但是我们看一下,这些不同条件是否真的有那么多呢?我们能不能找到一些有代表性的条件来代替呢?”田伯光不谈美眉的时候,还真有点专家的样子。
“你是想说等价类法吧。但是现实的情况时,对每一种情况都不能保证和另外一种类似,特别是我们涉及到对20个不同的系统和本系统连接的验证,我们怎么能使用等价类…..”
“笨!”令狐冲话音未落,就被田伯光一掌拍在了后脑勺上。“你觉得我们的研发人员会挨个去为各个不同的货运公司系统去开发不同的程序去让他们的软件能和我们联动吗?那样他们还不得累死?接口,接口你知道吗?我们只需要开发一套通用的接口,让各个货运公司的系统适应我们就可以了。他们自己在自己的系统上面做修改,我们需要保证的就是这套接口的正确性,保证按照我们规定格式传输的数据能正确被我们的系统处理就OK了。”
“那也就是说,我们可以不用考虑不同软件之间的集成了?”令狐冲见田伯光几句话就减少了20倍的工作量,觉得有点不可思议。
“也不完全是这样的。关于接口的测试,主要是对接口设计的验证,而接口的设计,则是参考了那些需要通过接口来进行连接的系统的。只是因为我们不需要验证接口的设计,所以现阶段我们才不用考虑软件的不同情况。我这里有一个自己写的测试接口的软件,你就用它来当作货运公司的系统来进行测试吧。”田伯光把一个小软件拷给了令狐冲。
“可是那也还有大概15000次的测试执行次数呀。这个我也得测上好久。”令狐冲觉得田伯光还没有完全解决问题。
“现在我们来考虑一下,这15000次的测试,除了输入的数据不同之外,每次运行的操作都一样吗?”田伯光似乎胸有成竹。
“当然都一样了。其实这个业务流很简单,就是输入状态数据,然后检查列表中的数据是否发生了改变。关键就是数据太多样化了。”
“我的独门技术就是专门针对这种情况的。这种技术叫自动化测试。它可以让你在设计好自动化测试之后,机器自己运行测试用例。我们就只需要轻轻的点一下按钮,然后我们就可以关门出去看美眉,回来的时候,bingo!15000次测试完成了!”
“有这么神奇的技术?快来说给我听听。真的这么有效的话,我回去介绍给仪琳,她也一定会感兴趣的。到时她来向你请教,不是正遂了你的心愿?”
田伯光听说仪琳也可能感兴趣,忙不迭的把自己压箱底的技术秀给了令狐冲。

“自动测试相对于手工测试而言,其主要进步在于自动测试工具的引入。自动测试的一般定义为:各种测试活动的管理与实施,包括测试脚本的开发与执行,以便使用某种自动测试工具来验证测试需求。”田伯光一口气背出了这么一大段定义后,生怕令狐冲不明白,又简单解释了一下。“就是我们会有这样的一种工具,会代替我们进行测试的执行和对测试结果进行检验。”
“代替手工对程序进行执行,这个我可以理解。因为原来我们就可以通过操作系统的shell来实现对某些操作的自动运行,我想自动化工具调用shell来实现这一功能还是不太困难的。但是对测试结果的验证,我觉得这点挺不容易的,计算机不是人,怎么能够知道程序是否运行的正确呢?”令狐冲有点将信将疑。
“你是怎么判定程序是否运行的正确的?就拿我们的物流系统中的状态跟踪来举例子吧。”
“我会检查任务列表,看该项任务在接受到某一个接口传过来的数据后,是不是该状态会改变成接口传过来的数据内容。”
“说的再具体点,你是怎么知道该状态改变成你想要的数据内容的呢?”田伯光要打破沙锅问到底。
“这就很简单啦,列表上显示出来了呀。”令狐冲不明白,这么简单的问题为什么还要回答。
“列表上显示出来只是你观察到的表现,程序在此时发生了什么变化呢?”田伯光明显加快了语速。
这次令狐冲的回答就没有那么快了,他显然正在思考着什么。田伯光看着他,在一旁坏坏的笑着。
“我明白了!程序中会产生很多变化,数据库中的相应字段发生了改变,页面上的表现层也发生了改变。这个list的value就变成了我在接口中输入的数据,自动化程序就是通过监控这些变化来判断程序的运行是否正确。”令狐冲想到了问题的关键之处。
“想通了这点,你对自动化测试就容易理解了。当然我们还会遇到一些具体的问题,比如工具如何使用呀,各个控件如何识别呀,怎么设置检查点呀,缺陷如何报告呀,如何多样化的组织不同的输入数据呀。这些问题,等我们看完电影回来,明天再谈吧。你可别忘了,你答应帮我约仪琳吃饭看电影的呦。”
“没问题!”令狐冲一溜小跑回了宿舍。一会就见段誉、岳灵珊、令狐冲还有仪琳四个人出现在田伯光面前。
“听说田工请看电影和吃宵夜,我们几个正好都闲着没事,就都来凑个热闹。田工你不介意吧!”岳灵珊的语调甜的能把人融化。田伯光看看依然是低着头的仪琳,只好苦笑着不停的点头。

[ 本帖最后由 aries_duan 于 2008-8-7 13:39 编辑 ]

© 本文为 aries_duan 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

"太阳花"公司,和本页面左上角的图标很一致。

我估计林平之还是会和岳灵珊在一起的,和书里一样,不过令狐冲倒有可能和仪琳在一起,只要任盈盈不出场。

田伯光的台词,我读起来和前面古龙、风清扬的很难区分。

[ 本帖最后由 scmscmscm 于 2008-8-7 16:04 编辑 ]

© 本文为 scmscmscm 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

78楼写的很精彩,引入了自动化测试,这种叙事方式很容易被人接受,也非常好理解自动化测试的好处了。

意外的一个小发现“bingo”,这个口语词用的不错。特地百度了一下:

bingo
Bingo 是一种填写格子的游戏,在游戏中第一个成功者以喊“Bingo”表示取胜而得名。
现在不止是在游戏中,表示答对了,猜中了,或者是做到了某件事情.
“Bingo”这个单词还有一层意思,是指“因出乎意料的成功而兴奋的叫声”。所以,若和下面两种情况类似,你也可以大声地说“Bingo”。

①Bob 在针线盒里找一颗与自己衬衫相配的扣子,费了九牛二虎之力,他总算找到了。于是他高兴极了,说:“Bingo! Here it is!”(太棒了!就是这一颗了。)

②Bill的隐形眼镜不慎掉了,Mary 帮他找到了,Bill兴奋地说:“I’ve found it! Bingo!”(我找到了,好棒!)

同时,还有一首以Bingo命名的好听歌曲。
There was farm bed a dog, and Bingo was his name O. B-I-N-G-O,B-I-N-G-O,B-I-N-G-O,and Bingo was his name O.

呵呵,情节上也写得越来越好了,最后的一个细节突出了令狐冲的鬼机灵,老田意思是单独约仪琳,结果变成了大家的免费电影节了。爽哈哈。

© 本文为 懂你 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
优惠购买Rational,Telelogic,Hansky产品,企业VIP服务、实施
VIP服务电话:13581809377

TOP

发新话题