CL-Coveralls: Common Lisp测试覆盖率工具
需积分: 10 38 浏览量
更新于2024-11-11
收藏 12KB ZIP 举报
资源摘要信息:"Common Lisp软件库CL-Coveralls"
CL-Coveralls是一个专门为Common Lisp编程语言设计的库,其主要功能是将测试覆盖率的报告发布到Coveralls.io服务上。Coveralls.io是一个针对持续集成(CI)环境的代码覆盖率跟踪和统计平台,它可以帮助开发者了解代码中哪些部分经过了测试,哪些部分尚未被测试。
CL-Coveralls作为Common Lisp的辅助工具,支持SBCL(Steel Bank Common Lisp)以及Clozure CL(CCL)版本1.4到1.9的实现。需要注意的是,CCL 1.10版本由于已损坏,目前不被CL-Coveralls支持。此外,它还支持多种持续集成服务,尽管在描述中没有明确列出这些CI服务的具体名称,但可以推测,它们是一些主流的、支持Common Lisp的CI平台。
在使用CL-Coveralls时,有几个重要的局限性需要了解。首先,尽管CL-Coveralls可以跟踪代码的覆盖率,但它无法报告每行代码的输入次数,这是因为它依赖于Common Lisp中现有的测试工具,而这些工具通常不提供每行输入次数的信息。因此,CL-Coveralls将所有行的输入次数统一报告为1。
在用法方面,CL-Coveralls支持一个环境变量$COVERALLS,用于决定是否记录测试覆盖率。在运行测试之前,开发者需要设置这个环境变量。如果环境变量$COVERALLS被设置为true,那么测试覆盖率的报告将被激活,并在测试完成后上传到Coveralls.io服务。示例用法是在SBCL环境运行测试脚本时,通过命令行设置环境变量并加载测试脚本:
```bash
$ COVERALLS=true sbcl --load test-script.lisp --eval '(sb-ext:exit)'
```
在测试脚本内部,需要将测试代码包裹在CL-Coveralls提供的特定包裹函数中,比如`coveralls:w`,这样CL-Coveralls才能正确地捕获覆盖率数据并将其发送到Coveralls.io。
CL-Coveralls目前仍处于ALPHA阶段,这意味着它的API可能会发生变化,并且可能会有尚未修复的bug。在使用这样一个不稳定版本的库时,用户应该保持警惕,及时关注可能出现的更新和已知问题。
关于“压缩包子文件的文件名称列表”,这里提到的“cl-coveralls-master”似乎指向了一个包含CL-Coveralls库代码的压缩包文件。通常这类文件可能会被放置在项目的Git仓库的master分支上,用于归档整个库的代码历史。开发者在下载并解压缩该文件后,可以获取到CL-Coveralls库的源代码,进而可以在本地环境中进行安装和使用。
总结来说,CL-Coveralls作为一个Common Lisp的库,为Common Lisp的开发者提供了将测试覆盖率数据上传至Coveralls.io平台的能力。它利用环境变量控制测试覆盖率记录的开关,并依赖于持续集成服务来触发覆盖率报告的生成。需要注意的是,它目前只支持特定版本的SBCL和CCL实现,并且在报告覆盖率时存在一些限制,比如无法区分每行代码的输入次数。
2019-09-18 上传
2022-02-11 上传
2021-07-14 上传
2021-05-03 上传
2021-02-26 上传
2021-02-03 上传
2021-03-16 上传
2021-02-04 上传
2021-02-28 上传
合众丰城
- 粉丝: 23
- 资源: 4651
最新资源
- Raspberry Pi OpenCL驱动程序安装与QEMU仿真指南
- Apache RocketMQ Go客户端:全面支持与消息处理功能
- WStage平台:无线传感器网络阶段数据交互技术
- 基于Java SpringBoot和微信小程序的ssm智能仓储系统开发
- CorrectMe项目:自动更正与建议API的开发与应用
- IdeaBiz请求处理程序JAVA:自动化API调用与令牌管理
- 墨西哥面包店研讨会:介绍关键业绩指标(KPI)与评估标准
- 2014年Android音乐播放器源码学习分享
- CleverRecyclerView扩展库:滑动效果与特性增强
- 利用Python和SURF特征识别斑点猫图像
- Wurpr开源PHP MySQL包装器:安全易用且高效
- Scratch少儿编程:Kanon妹系闹钟音效素材包
- 食品分享社交应用的开发教程与功能介绍
- Cookies by lfj.io: 浏览数据智能管理与同步工具
- 掌握SSH框架与SpringMVC Hibernate集成教程
- C语言实现FFT算法及互相关性能优化指南