iOS单元测试

[基础]iOS 单元测试(一)入门与配置

こ雲淡風輕ζ 提交于 2020-11-29 02:01:46
所有文章目录: http://my.oschina.net/ChenTF/blog/677112 本篇文章地址: http://my.oschina.net/ChenTF/blog/677309 会持续的更新所有历史文章, 所以收藏的话请收藏上面的地址。 workspace — project — targets 讲解 一个工作空间可以包含多个项目,一个项目可以包含多个目标(生成物)。 一个项目中根据运行的targets不同,可以进行不同的编译设置,project是基础父类,targets是子类,targets的设置会覆盖project的设置。 Target与单元测试的关系 单元测试是在一个新的target上进行的设置,这样就不会影响程序开发,编译。 在XCode7中创建一个项目时默认是选中创建测试target的,如果没有,创建方法如下:File -> New -> target -> UITest/UnitTest,创建完成后会自动创建对应的文件夹。 UnitTest 使用该UnitTest测试一些代码逻辑,使用UITest测试UI的点击交互逻辑。 1.创建要测试的代码 2.创建测试类 说明: 任何测试类都需要继承自 XCTestCase 类 setUp,tearDown是系统默认方法 命名:测试的目标类名+Tests 3.编写测试方法 说明: 测试方法必须以testXXX开头

【卡片记忆】iOS 单元测试查看覆盖率

主宰稳场 提交于 2020-03-03 21:29:39
###iOS 覆盖率 https://github.com/knight2010/XcodeCoverage ###定义API的需求 为添加到项目中的每个方法或者函数定义需求和结果非常重要。对于需求,包括输入和输出范 围,exceptions 抛出异常,条件限制,以及返回值的类型(尤其如果值是类的实例时)。定义 要求并确保满足代码中的需求可以帮助你编写出健壮的安全的代码。 ###边写边测 每当你设计和编写一个方法或函数时,就应该编写一个或多个测试用例来确保API的需求得到满 足。记住,为现有代码编写测试要比为你正在编写的代码难得多。 ###检查边界条件 如果对一个方法的参数值必须在特定范围内,你的测试应包括该范围的最低值和最高值。例 如,如果一个程序有一个整数参数,那么该参数值的范围要在 0 和 100 之间(包括首尾值), 该方法的测试代码应该为参数传递0,50和100这些值。 ###使用negative测试 negative 测试可以确保您的代码能适当地响应出错的条件。当收到无效的或意外的输入值时, 它可以验证代码的行为。同样的,还可以验证它返回错误代码或引发异常时的行为。例如,如 果一个整数参数范围必须为 0到100(包含首尾值),创建测试用例并传值 -1 和 101,以确保 该程序能引发一个异常或返回一个错误代码。 ###编写全面的测试用例