|
|
51CTO旗下网站
|
|
移动端

3.1 集合论

《软件测试:一个软件工艺师的方法(原书第4版)》第3章面向测试人员的离散数学,本章和下一章将给出测试人员所需的数学知识。还是把测试人员类比成技艺师,此处介绍的各种数学方法就是工具,测试技师应该是知道如何用好这些工具的。本节为大家介绍集合论。

作者:马琳/李海峰 译来源:机械工业出版社|2017-11-15 17:35

【51CTO技术沙龙】10月27日,让我们共同探索AI场景化应用实现之道

第3章 面向测试人员的离散数学

同软件生命周期的其他活动相比,软件测试更多地依赖于数学描述和数学分析。本章和下一章将给出测试人员所需的数学知识。还是把测试人员类比成技艺师,此处介绍的各种数学方法就是工具,测试技师应该是知道如何用好这些工具的。借助这些工具,测试人员能够严谨、精确和高效地完成工作,所有这些都能提高测试工作质量。在本章标题中,“测试人员的”这个限定词非常重要。因为本章是针对那些只有初浅数学基础知识,或者已经忘了大部分数学知识的测试人员编写的,所以真正的数学家很可能会对本章中不严密的讨论有看法。已经读者很熟悉离散数学的基础知识,可直接跳到下一章学习图论。

一般情况下,离散数学更适于功能测试,而图论更适于结构测试。“离散”这个词会引发一个问题:数学上的非离散又是怎样的呢?在数学上,“离散”的反义词是“连续”,比如像在微积分中那样,但软件开发人员和测试人员很少能用到这些。离散数学包括集合论、函数、关系、命题逻辑和概率论,本章将逐一讨论这些内容。

3.1 集合论

高谈阔论了这么多严格和精确之后,才尴尬地发现,竟然找不到对集合的明确定义。这可就麻烦了,因为集合论是这两章数学内容的核心。数学家对集合的概念进行了重要的区分:朴素集合论与公理集合论。在朴素集合论中,集合被当作是一个基本概念,就像点和线这样的几何学中的基本概念一样。集合的同义词有许多,比如堆、组、束等,这样你可以领悟到其中的含义了吧。集合概念的重要意义在于,它使我们能够把若干个事物作为一组或一个整体来考察。比如,我们可能需要研究正好有30天的所有月份(在测试第2章的NextDate函数时就会用到这个集合)。用集合论的表述方法,这个集合写作:

M1 = {4月,6月,9月,11月}

读作:M1是元素为4月、6月、9月和11月的集合。


喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:365934973

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

Eclipse Web开发从入门到精通(实例版)

本书由浅入深、循序渐进地介绍了目前流行的基于Eclipse的优秀框架。全书共分14章,内容涵盖了Eclipse基础、ANT资源构造、数据库应用开发、W...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊