读书人

iOS开发那些事-编纂OCUnit测试方法-应

发布时间: 2014-04-27 16:52:41 作者: rapoo

iOS开发那些事--编写OCUnit测试方法-应用测试方法

应用测试方法

应用测试是测试应用程序的一些功能,这个功能具体到点击一个按钮触发一个事件,因此它主要是测试表示层。我们看看视图控制器ViewController.m中有那些方法需要测试,然后再来设计测试用例。

输入验证不需要考虑太多,只需要考虑空情况,我们设计了6个用例。

onClick:方法应用测试用例

测试用例

输入条件

月收入总额(元)

输出结果

月应纳个人所得税税额(元)

说明

1

空白0.00测试不输入直接点击计算按钮

2

8000345.00测试整数

3

8000.59345.12测试小数

4

08000.59345.12测试有前导0数据

5

40000.50.568195.15测试输入两个小数点

6

40000.50..568195.15测试连在一起两个小数点

我们看看应用测试类AppllicationTest.h代码:

//测试不输入直接点击计算按钮- (void)testOnClickInputBlank{STAssertNotNil(self.viewController, @”ViewController没有赋值。”);//设定输入值self.viewController.txtRevenue.text = @”";//调用oncClick测试[self.viewController onClick:nil];//取得输出结果NSString* strTax = self.viewController.lblTax.text;//断言STAssertEqualObjects(strTax, @”0.00″, @”期望值是:0.00 实际值是:%@”, strTax);}//测试整数- (void)testOnClickInputIntegerNumber{STAssertNotNil(self.viewController, @”ViewController没有赋值。”);//设定输入值self.viewController.txtRevenue.text = @”8000″;//调用oncClick测试[self.viewController onClick:nil];//取得输出结果NSString* strTax = self.viewController.lblTax.text;//断言STAssertEqualObjects(strTax, @”345.00″, @”期望值是:345.00 实际值是:%@”, strTax);}//测试小数- (void)testOnClickInputOneDot{STAssertNotNil(self.viewController, @”ViewController没有赋值。”);//设定输入值self.viewController.txtRevenue.text = @”8000.59″;//调用oncClick测试[self.viewController onClick:nil];//取得输出结果NSString* strTax = self.viewController.lblTax.text;//断言STAssertEqualObjects(strTax, @”345.12″, @”期望值是:345.12 实际值是:%@”, strTax);}//测试输入两个小数点- (void)testOnClickInputTwoDot{STAssertNotNil(self.viewController, @”ViewController没有赋值。”);//设定输入值self.viewController.txtRevenue.text = @”40000.50.56″;//调用oncClick测试[self.viewController onClick:nil];//取得输出结果NSString* strTax = self.viewController.lblTax.text;//断言STAssertEqualObjects(strTax, @”8195.15″, @”期望值是:8195.15 实际值是:%@”, strTax);}//测试有前导0数据- (void)testOnClickInputPrefixZero{STAssertNotNil(self.viewController, @”ViewController没有赋值。”);//设定输入值self.viewController.txtRevenue.text = @”08000.59″;//调用oncClick测试[self.viewController onClick:nil];//取得输出结果NSString* strTax = self.viewController.lblTax.text;//断言STAssertEqualObjects(strTax, @”345.12″, @”期望值是:345.12 实际值是:%@”, strTax);}//测试连在一起两个小数点- (void)testOnClickInputLinkDot{STAssertNotNil(self.viewController, @”ViewController没有赋值。”);//设定输入值self.viewController.txtRevenue.text = @”40000.50..56″;//调用oncClick测试[self.viewController onClick:nil];//取得输出结果NSString* strTax = self.viewController.lblTax.text;//断言STAssertEqualObjects(strTax, @”8195.15″, @”期望值是:8195.15 实际值是:%@”, strTax);}

?

?

这 些测试方法都是非常类似的,首先需要使用STAssertNotNil宏判断一下self.viewController是否为nil,然后 self.viewController.txtRevenue.text设置文本框值,真正运行的时候我们是通过文本框控件输入的。语句 [self.viewController onClick:nil]是测试核心目的,参数是按钮对象指针onClick:中没有使用,传递nil就可以了。输出结果的取得是从lblTax标签控件 中取得的。最后使用STAssertEqualObjects宏断言。

?

读书人网 >操作系统

热点推荐