【卡片记忆】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,以确保 该程序能引发一个异常或返回一个错误代码。 ###编写全面的测试用例 全面的测试通过结合不同的代码模块来实现 API 的一些更复杂的行为。虽然简单,隔离测试提 供值,堆叠测试表现复杂的行为,这样能捕获住更多的问题。这些类型的测试在更现实的条件 下模拟你的代码的行为。例如,除了将对象添加到数组,你还可以创建数组,为之添加几个对 象,使用不同的方法删除若干对象,然后确保集合以及其余对象的数量是正确的。 ###使用测试用例覆盖bug修复 每当你修复完一个 bug,都要编写一个或多个测试用例,来验证此次修复的有效性。

###设置xcode

设置图

就是点击scheme 修改->测试->勾选Gather Coverage Data

###查看覆盖率

旁边目录

中间

输入图片说明

输入图片说明

###获取帮助

创新源于一种感觉! http://go-swift.net/?go=oschina-unittest

二维码

###打赏鼓励

go-swift.net

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!