苹果开源Swift基准测试套件
作者:网络转载 发布时间:[ 2016/2/22 14:30:20 ] 推荐标签:Swift 开发语言
苹果开源了Swift基准测试套件,在向Swift语言添加新特性时,它是跟踪Swift性能及捕获性能衰退的一个重要部分。
Swift基准测试套件由一个Swift源文件集合和若干Python脚本组成,前者实现了测试套件和基准测试辅助功能,后者实现了用于指标对比的工具。
苹果建议在提交任何可能影响性能的变更之前运行基准测试套件。这可以通过在提交pull request之前向build-script传递--benchmark标识来实现,Swift自动构建脚本会负责完成基本的工作,例如构建兼容Swift的LLDB,针对特定平台构建,在构建完成后执行测试等等。这有助于捕获潜在的性能衰退。为了使基准测试结果有意义,需要首先在Swift的主分支上运行一个基线基准测试,然后再在开发分支上运行基准测试,后一次的运行结果会自动同前一次的运行结果进行对比。
默认情况下,只有面向OS X平台的Swift基准测试会被编译,但可以像下面这样在命令行中指定其他平台:
$ swift/utils/build-script --ios --watchos --tvos
在使用基准测试驱动程序时,开发人员可以控制每个测试样本中的循环迭代次数以及每个测试中的测试样本数,例如:
$ ./Benchmark_O --num-iters=1 --num-samples=1
据苹果工程师Luke Larson介绍,目前,Swift基准测试套件包含75个基准测试,但苹果欢迎开发人员为新的基准测试、辅助程序库以及一般改进作贡献。Larson表示,苹果对贡献者有一个重要的要求,那是必须遵循同Swift一样的许可协议。因此,将基准测试移植到其他许可协议下是不会被接受的。
目前,Swift基准测试套件并没有同近发布的Swift持续集成系统整合,后者可以为OS X、iOS和x86_64 Ubuntu Linux等平台构建和运行测试。按照Jenkins的说法,Swift CI系统旨在能够支持更多来自Swift开发社区的平台和体系结构。Swift CI系统允许在pull request中运行测试(比如在提交到主分支之前),并将失败信息通知给负责的开发人员。不过,按照Larson的说法,Swift基准测试套件将来会同Swift CI系统集成。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11