(6)使用biselect追查问题,当发现一个bug却不知道是由哪个补丁引入时,使用二分查找,代码管理系统git以及补丁管理工具quilt都支持二分查找。
9. 覆盖率。关于Linux kernel的测试覆盖率,没有看到最新的统计,不过以前数据多是在20%左右的分支覆盖率。
虽然说自动化测试越来越重要,但是将内核部分测试自动化却是非常困难的,自动化只涵盖了一少部分功能,性能的自动化看起来做得更多些。质量更多还是由开发人员以及社区测试来保证。另外一方面看,Linux kernel本身的架构应该也有较高的容错性和可扩展性,以支持如此大量又频繁的修改。
说明
写本文时,我还并没有实际参与过Linux kernel的开发或测试,只是对其有兴趣,于是在网上查阅了大量文档,有些信息可能已经过时或者与实际情况不符,仅供参考。
引用说明
网上链接
Crackerjack Project http://ossipedia.ipa.go.jp/crackerjack/index.html
Linux命名争议 http://en.wikipedia.org/wiki/GNU/Linux_naming_controversy
Linux Test Project,测试Linux kernel以及相关功能 http://ltp.sourceforge.net/
Linux测试工具 http://ltp.sourceforge.net/tooltable.php
Linux 维基百科 http://en.wikipedia.org/wiki/Linux
Linux Kernel维基百科 http://en.wikipedia.org/wiki/Linux_kernel
开发流程 http://linuxwireless.org/en/developers/process
Autotest项目http://autotest.github.com/
Greg Kroah Hartman on the Linux Kernel视频http://www.youtube.com/watch?v=L2SED6sewRw
http://stackoverflow.com/questions/3177338/how-is-linux-kernel-tested
kernel官网 http://www.kernel.org/
Linux kernel邮件列表FQA http://ftp.osuosl.org/pub/linux/docs/lkml/
Pdf电子书
《Best Practices in Linux Kernel Testing》
《Linux Kernel Tester’s Guide》version 0.3,中文版《Linux 内核测试指南》
《How to Participate in the Linux Community》2008.8
《Linux Kernel Development:How Fast it is Going, Who is Doing It, What They are Doing, and Who is Sponsoring It》2012.3
原文转自:http://qa.baidu.com/blog/?p=1026