基于状态图的软件测试用例设计

发表于:2012-12-17 11:34

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:matt_chen    来源:51Testing软件测试网采编

  最近产品新添加了一个新功能,在测试用例设计上应用到了基于状态图的测试用例测试方法,今天不是很忙,整理下看的资料写出这篇文章,不足的地方请指出。

  首先,大概介绍下这个功能(就不详细透露产品信息):当邮件服务器收到一封带有可疑附件的邮件,新功能会把这封邮件隔离到一个nsf数据库中,然后将这些可疑附件上传到一特定服务器上(类似360,右击选中文件,在沙盒中运行),在这个特定服务器上会运行几个VM,分析这些可疑文件并给这些文件进行打分,判断是不是Virus,过一段时间,根据SHA值到特定服务器中查询可疑文件的分析结果,一旦拿到这封邮件中所有可疑文件的分析结果,便对这些那些Virus文件采取指定的动作(如,清除,删除,隔离等),最后释放这封邮件。这交互过程如下图所示:

  这篇文章只考虑两台Server间交互方面的测试用例设计,其他方面(如,邮件编码、文件类型大小、和其他功能的交互)先不用管。依据RD的design doc 和SRS文档,利用xmind列出这一功能的所有测试点,然后写测试用例。我们来看看在思维导图中列出的关于两台server交互方面的测试点:

  第一个是正常流程,在备注中给出了正常流程的具体步骤(如我上面所述)。第二个是error handling,列出了sandbox出错的可能,但没有讲清楚这样的错误发生在什么样的场景下。测试用例也是基于这样的思维导图细化出来的。刚开始我也没察觉出有什么不妥,或则说有漏测的地方。依据这样的测试用例,两轮测试后,理应没有什么大问题了。直到我无意中发现这样两个问题:

  问题一:一封邮件中有两个可疑文件,如果一个可疑文件过一段时间拿到了分析结果,但另一个文件一直无法给出分析结果,这时候预先设定的超时等待时间(1小时)到了,预期行为是不会再等待那个文件的结果,直接对拿到结果的文件做动作,然后release邮件。但实际结果是,每过大概半小时左右,就会把超时时间置0,导致的结果是这封邮件永远被hold在nsf中。

  问题二:一封邮件中有可疑文件,被隔离到nsf中,然后把可疑文件上传到特定服务器,但这时候server负载过大,无法响应,可疑文件很长时间无法上传完成,这时候关闭服务器,发现处理进程无法退出。

21/212>
《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • 没翅膀的飞鱼
    2012-12-18 08:17:27

    其实这种思路感觉是发现这两个场景后,重新用新的设计方法设计用例,自然会朝已发现问题的场景上面想,但是如果没有事先发现这两个场景,用状态图来分析能分析处理吗?持怀疑态度----

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号