欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

现代语文与软件测试学的关系

程序员文章站 2022-07-14 19:13:16
...

好久不写文,最近面试多了,感觉孩子们把学的知识都学死了,连软件测试TC设计的基础理论很多同学都不能够完全好好掌握,按照我多年质控方面的理解,今天以现代语文的方式为大家解析一下TC设计。

 

所谓语文,其实平时我们说的话都是语文,对于测试工程师,产品经理PRD里写的每一句话都是语文。所以我个人觉得学好语文和做好测试关系还挺大的。

 

举例:现代汉语词汇这样分类的,分为实词和虚词2类。

实词:名词、动词、形容词、数词、量词、代词。

虚词:副词、介词、拟声词、连词、助词、叹词。

 

而软件测试TC设计和实词关系很大。再举例来说:(这是我面试经常问的一道题)

我周六花了6000块买了一台白色的iphone6.

我 -- 代词

周六 -- 名词

花了 -- 动词

6000块 -- 数量词

买了 -- 动词

一台 -- 数量词

白色的 -- 形容词

iphone6 -- 名词

 

活学软件测试理论:

1.所有数词都试用于等价类测试,边界值测试以及压力测试

   例如:6000是一个子集、6000以下是一个子集、6000以上是一个子集,6000块 一台,那么0元是否可买,同一时间段多人采购N台如何进行压力测试?

2.所有代词、名词都适合做功能测试,等价类测试。

   例如:你、我、他。周六、非周六。iphone6、iphone7、非iphone6.

3.所有动词基本都适合做性能测试。

   例如:花了、买了。是一个人花钱使用是这个花这个方法,还是N个人同时在花钱,是买一台,还是同时买N台。

4.所有量词都适合错误推断法。

   例如:个、台。而不是条,打,粒。我不能用6000块买一打,或者一条iphone6出来。

5.所有形容词都适合做等价类划分法。

   例如:白色的,非白色的。

6.基本每一句话都适合做场景分析法。

   这个购买操作是在什么场景下进行的?什么场景不能进行?这个场景的特殊条件,前提条件是什么?用户可能会做的,还会做什么?

 

那什么样的语句适合因果图法、判定表法、正交试验法,功能图法呢?

 

因果图法:(即汉语中简单的条件性语句都适应因果图法)

例如:当/若 怎么样怎么样的时候,结果/应该 会怎么怎么样的语句,特别适合因果图法。

例如:当乘客在3公里范围内取消订单时,罚款5元,当乘客在5公里范围外取消订单,罚款10元。

 

判定表法:(即汉语中复杂条件组合的语句都适应判定表法)

你可以这样简单理解判定表法,就是当有多个原因会导致结果会改变的时候应该使用判定表法。

例如:当乘客在3公里范围内,司机已达到目的地,并且订单金额是大于50元,当用户点击取消订单是,罚款5元。其他情况乘客不做惩罚。

这个时候你应该把这几个条件列出来,得到你的结论

条件:1.乘客是否在3公里范围内  2.司机是否已经到达目的地  3.订单金额是否大于50元 4.用户是否点击了取消 这4个条件决定了程序的结果是否罚款5元。

 

正交试验法:(即汉语中,区间分布,并且均匀分布的语句都适应正交试验法。)

正交试验法,其实在应用软件的设计中,碰到使用这种场景的Case还是非常少的。因为现在的应用软件的逻辑没有那么复杂。

我举个例子:打车订单在0-20元的用户,并且周登录次数在1-5次的,每周奖励1元,打车订单在20元-50元的用户,并且周登录次数在5-10次的,每周奖励2元。

如果0-20元,周登录次数在1-5次的,与20-50元,周登录次数在5-10次的用户比例是一致的,就可以使用正交实验法,在各范围内取有代表的点就可以覆盖该范围内的所有逻辑。

若0-20与20-50的用户比例不一致,实际就要按照用户重点落在那个区域内,对该区域进行重点测试。

 

功能图法:(这个最简单,但是大部分同学不知道自己每天在用)

即平时你们看到的流程图,按照该流程图设计的方式,即功能图法。

 

 这样来理解TC设计的8种测试方法,是不是就非常非常简单,其实就是初中语文吗?你总会说话,总会知道这个词汇是什么词汇的吧,既然知道,那设计好TC也不是什么难事。

 

最后将TC设计的8种方法罗列如下:等价类划分法、边界值分析法、错误推断法、因果图法、判定表法、正交试验法、功能图法、场景分析法。

 

 

 

相关标签: 测试用例