等价类划分的思考

 

 

一、等价类划分的含义

划分的意思就是把全集分成多个集合。

等价类的意思就是在同一个等价类里的元素师等价的,用谁都一样。

那么把全集分成多个等价类每个等价类取一个用例便可以覆盖所有情况,来达到最全面的测试范围,以及最少的测试次数。

 

二、如何划分等价类

分好多种情况,主要看自己取的分类标准。要注意等价类之间无交集,各等价类并起来为全集

1.数值类:区间中部,区间外的两部分

2.性质:按数字(奇数偶数),是否是字母等等

只要能分出有效等价类和无效等价类就行

 

三、如何通过等价类写测试用例

目标是覆盖所有的等价类

编写测试用例的时候会有一个测试用例覆盖多个等价类,要注意的是最后所有都覆盖即可,有点重复的覆盖没有关系

 

 

例:

要求输入框内只能输入数字和字母,长度必须是1-6之间

 

有效等价类:

1.长度1-6

2.输入字母或者数字

无效等价类

1.长度0,大于6

2.输入字母数字以外的字符

 

编号测试用例期待输出
1ok  正确
2111正确
3ok..  

请输入字母或者数字

4111..

请输入字母或者数字

51234567

请输入字符的长度为1到6

61234567..请输入字母或者数字

 

关键objective-c代码 

- (IBAction)ok:(id)sender {

    NSString* input = _input.text;

    UIAlertView* alert = [[UIAlertView alloc]initWithTitle:nil message:nil delegate:self cancelButtonTitle:@"ok" otherButtonTitles: nil];

    NSString* rangestr = @"^([A-Z0-9a-z])*$";

    NSRange range1 = [input rangeOfString:rangestr options:NSRegularExpressionSearch];

    

    if (range1.location == NSNotFound) {

        alert.message = @"请输入字母或者数字";

        [alert show];

    }

    else if (input.length>6 || input.length==0){

        alert.message = @"请输入字符的长度为16";

        [alert show];

    }

    else{

        alert.message = @"输入正确";

        [alert show];

    }

}

 

测试结果图

 

转载于:https://www.cnblogs.com/leoXoel/p/4356697.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值