美文网首页代码人生
Testing with Xcode文档(中文版):代码覆盖率

Testing with Xcode文档(中文版):代码覆盖率

作者: 木夜溯 | 来源:发表于2016-01-27 17:03 被阅读145次

Code Coverage是Xcode 7 的一项新功能,能够使你量化多少代码被测试用例执行。根据代码覆盖,你可以决定测试用例是否是你关注的。

启用代码覆盖

在Xcode的Code coverage是LLVM支持的测试选项。当你启动Code coverage,LLVM工具的代码去收集基于该方法和功能被调用的覆盖数据。code coverage选项可以收集数据,以报告测试的性能和正确性,无论是单元测试还是UI测试

你可以通过编辑scheme的测试行为来启动代码覆盖

  1. 从Scheme编辑菜单中现在编辑 Scheme


    选择Scheme选择Scheme
  2. 选择Test action
  3. 启用 Code Coverage复选框来收集覆盖数据。


    启用Code Coverage启用Code Coverage
  4. 点击Close

How Code Coverage Fits into Testing

代码覆盖率是衡量你测试量的一个工具。它解决了一下问题

  1. 当运行你的测试用例时那些代码在执行
  2. 你的测试用例是否足够
    换句话说,你有没有足够的测试用例来检查你的所有的代码正确性和性能。
  3. 没有测试到那些部分的代码
    当运行完测试用例,Xcode取得LLVM的覆盖数据并且用它生成覆盖报告,显示在覆盖窗口中。其中显示了测试运行的源文件和功能的列表,并提供了每一个的代码覆盖率。


    代码覆盖率结果代码覆盖率结果

源码编辑器显示了文件中的每一行代码,并高亮显示了未被执行的代码。它强调需要覆盖的区域而不是已经覆盖的区域。例如,移动鼠标到-[Calculator input:]方法在代码覆盖率报告上显示的按钮,会带你到注释的源代码。


查看源码查看源码

代码覆盖率的注释显示在左侧,并且显示了在执行测试期间被执行的次数。 例如:


覆盖代码示例覆盖代码示例

input:方法, 调用计数,在测试时频繁的被调用,然而,也有哪些没有被调用的方法。这清楚的被标记在源码编辑器中,如下:


未覆盖代码示例未覆盖代码示例

这个报告的数据和显示给你一个机会去先一个测试用例,包括意外或无效字符,以确保错误的初始方式是你预料的。

相关文章

网友评论

  • brave723:当你启动Code coverage,我xcode9.0 没有这个选项怎么启动?

本文标题:Testing with Xcode文档(中文版):代码覆盖率

本文链接:https://www.haomeiwen.com/subject/igndkttx.html