软件测试第二周 - 等价类划分

等价类划分的应用

  • EditBox允许1到6个英文字符或数字,按OK结束
  • 有效等价类:
    长度:1到6 字符:a-z,A-Z,0-9
  • 无效等价类: 长度:0,7 字符:英文/数字以外字符,控制字符,标点符号

  • 编号输入输出
    1abcdef符合要求
    2abc123符合要求
    3354301符合要求
    4不符合要求
    5akdfnafks不符合要求
    6,.,.*&不符合要求

使用 Xcode 编写的 Objective-C 程序

221415170788149.png

221415275006401.png

//
//  ViewController.m
//  testApp
//
//  Created by trigger on 15/3/22.
//  Copyright (c) 2015年 trigger. All rights reserved.
//

#import "ViewController.h"

@interface ViewController ()
@property (strong, nonatomic) IBOutlet UITextField *textBoxText;
- (IBAction)buttonPress:(id)sender;
- (BOOL)isValid:(NSString*)str;
@end

@implementation ViewController
@synthesize textBoxText;

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

- (IBAction)buttonPress:(id)sender {
    BOOL validity;
    validity  = [self isValid:textBoxText.text];

    NSString *message;
    if (validity == true){
        message = [NSString stringWithFormat:@"输入信息符合要求!"];
    }
    else{
        message = [NSString stringWithFormat:@"输入信息不符合要求!"];
    }
    [[[UIAlertView alloc]initWithTitle:@"等价类检查" message:message delegate: nil cancelButtonTitle:@"好的" otherButtonTitles:nil, nil]show];
}

- (BOOL)isValid:(NSString*)str{
    if (str.length == 0 || str.length >= 7) {
        return false;
    }
    char * cha = [str cStringUsingEncoding:NSASCIIStringEncoding];
    for (int i = 0; i < str.length; i++) {
        if ((cha[i] >= 'a' && cha[i] <='z') || (cha[i] >= 'A' || cha[i] <= 'Z') || (cha[i] >= '0' || cha[i] <= '9'));
        else{
            return false;
        }
    }
    return true;

}
@end

转载于:https://www.cnblogs.com/triggerlin/p/4357274.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值