SwiftCoverage
Swift 代码覆盖率编写开始
单元测试
当前为 87% (截至提交 59a639c)
每个提交都会运行一个 post job,执行 "tox -e cover" 并保存生成的报告。可以通过获取提交的哈希值(而不是提交中的 ChangeId)来找到它。
$ git log -1
commit 59a639c116eba2211dad722b287f9a8675a5155d
Merge: fc040ef bcdafa3
Author: Jenkins <jenkins@review.openstack.org>
Date: Wed Apr 30 06:16:28 2014 +0000
Merge "Sleep between object ZBF process forks"
$ wget http://logs.openstack.org/59/59a639c116eba2211dad722b287f9a8675a5155d/post/swift-coverage/a234999/cover/
唯一缺少官方覆盖率的模块是 swift.account.replicator 模块,它只是实例化 swift.common.db_replicator.Replicator 类的一个实例。
功能测试
当前为 54% (截至提交 59a639c)
使用 "tox -e func" 可以获得使用进程内功能测试的代码覆盖率(如果已经存在 /etc/swift/test.conf,请确保设置 SWIFT_TEST_IN_PROCESS=true)。
目前,以下模块完全没有覆盖
- CLI
- swift.cli
- swift.cli.info
- swift.cli.recon
- swift.cli.ringbuilder
- 守护进程
- 账户
- swift.account.auditor
- swift.account.reaper
- swift.account.replicator
- 容器
- swift.container.auditor
- swift.container.replicator
- swift.container.sync
- swift.container.updater
- 对象
- swift.obj.auditor
- swift.obj.expirer
- swift.obj.replicator
- swift.obj.ssync_receiver
- swift.obj.ssync_sender
- swift.obj.updater
- 账户
- 通用
- swift.common.internal_client
- swift.common.manager
- 中间件
- swift.common.middleware.cname_lookup
- swift.common.middleware.crossdomain
- swift.common.middleware.domain_remap
- swift.common.middleware.formpost
- swift.common.middleware.keystoneauth
- swift.common.middleware.list_endpoints
- swift.common.middleware.memcache
- swift.common.middleware.name_check
- swift.common.middleware.recon
- swift.common.middleware.staticweb