软件测试


网站首页 | 软件测试论坛 | 软件测试培训 | 软件测试博客 | 软件测试杂志 | 软件测试沙龙 | 软件测试下载 | 软件测试顾问
业界新闻 | 软件测试人才 | 软件测试技术 | 软件测试工具 | 行业软件测试 | 软件测试管理 | 软件质量专栏 | 软件开发专栏
当前位置:首页>>软件测试技术>>单元测试>>正文
测试Linux的可靠性
文章出处:DevelopWorks 作者:不详 发布时间:2005-10-19
本文记录了 Linux 内核和其他核心 OS 组件的测试结果与分析,从库和设备驱动程序到文件系统和网络,测试范围无所不含,所有的测试都是在相当不利的条件下进行,并且经历了很长的时间。IBM Linux Technology Center 刚刚结束了这次长达三个多月的全面测试,并将他们的 LTP (Linux Test Project) 测试结果与 developerWorks 的读者共享。

IBM Linux Technology Center (LTC) 成立于 1999 年 8 月,想让 Linux 成功的共同梦想使其与 Linux 开发团体直接合作。它的 200 多名员工使之成为开放源代码开发者的较大团队组织之一。他们提供的代码范围包括,从补丁到结构化的内核改变,从文件系统和国际化工作到 GPL'd 驱动程序。他们还致力于追踪 IBM 内部进行的 Linux 相关开发。

LTC 尤其感兴趣的领域是 Linux 可扩展性、适用性、可靠性和系统管理 —— 所有的目的都是为了使 Linux 更适用于企业。他们为 Linux 团体所做出了诸多贡献,包括使 Linux 可以工作于 S/390 主机,将 JFS 日志文件系统移植到 Linux,等等。

LTC 的另一项核心任务是,以测试商业项目的方式在实验室条件下对 Linux 进行专业的测试。LTC 与 SGI、OSDL、Bull 和 Wipro Technologies 一道促成了 LTP Linux 测试项目(LTP)。下面是经过 LTP 套件在 Linux 内核上超长时间全面测试得到的结果。如您所猜,Linux 极好地承受了持续的压力的考验。

测试结果一瞥
下面的总结基于运行期间的测试和观察结果:

  • Linux 内核和其他核心 OS 组件 —— 包括库、设备驱动程序、文件系统、网络、IPC 和内存管理 —— 运转稳定并完成了所有期望的运行期间,没有任何严重的系统故障。
  • 每次运行的成功率都很高(超过 95%),只有极少数的期望中的间歇故障,而这些故障是设计用来使资源过载的测试同时执行的结果。
  • Linux 系统性能在长时间的运行中没有下降。
  • 在 SMP 系统上,Linux 内核正确地扩展以使用硬件资源(CPU、内存、硬盘)。
  • Linux 系统可以很好地承受 CPU 持续满负荷运转(超过 99%)和极重内存压力。
  • Linux 系统正确地处理了过载的情况。

测试证明了 Linux 内核和其他核心组件在 30 天、60 天、90 天内是可靠的稳定的,可以为用户提供一个长时间运行的健壮的、企业级的环境。

Linux 可靠性度量

目标
对 IBM Linux Technology Center 来说,Linux 可靠性工作的目标是,使用 LTP 测试套件对 Linux 操作系统进行超长时间的测试,重点在于 Linux 用户环境相关的工作负荷(参阅 参考资料 以深入了解 LTP)。而并不是致力于证明缺陷。

测试环境概述
本文描述的是使用 LTP 测试套件进行的 30 天与 60 天的 Linux 可靠性度量测试的测试结果和分析。测试以 SuSE Linux Enterprise Server v8 (SLES 8) 作为测试内核,以 IBM pSeries 服务器作为测试硬件。使用的是一个特别设计的 LTP 压力测试场景,在使用网络与内存管理的同时并行地运行大范围的内核组件,并在测试系统上生成高工作负荷压力。Linux 内核、TCP、NFS 和 I/O 测试组件以重工作负荷压力为目标。

测试

30 天
pSeries 30 天 LTP 压力执行结果

  • 机器:p650 LPAR
  • CPU:(2) Power4- 1.2 GHz
  • 内核:Linux 2.4.19-ull-ppc64-SMP (SLES 8 SP 1)
  • LTP 版本:20030514
  • 99.00% 平均 CPU 利用率(用户:48.65%,系统:50.35%)
  • 80.09% 平均内存利用率(8GB)

观测结果:

  • 在 p650 LPAR 上 SLES 8 PPC64 30 天压力运转成功完成。
  • 测试工具是 LTPstress。测试用例以并行和串行方式执行。
  • 内核、TCP、NFS 和 I/O 测试组件都以重工作负荷压力为目标。
  • 成功率:97.88%。
  • 没有严重的系统故障。

图 1. 30 天 LTP 压力执行结果
pSeries 上 30 天 LTP 压力执行结果

60 天
60 天 LTP 压力执行结果:pSeries

  • 机器:B80
  • CPU:(2) Power3- 375 MHz
  • 内核:Linux 2.4.19-ull-ppc64-SMP (SLES 8 SP 1)
  • LTP 版本:20030514
  • 99.96% 平均 CPU 利用率(用户:75.02%,系统:24.94%)
  • 61.69% 平均内存利用率(8GB)
  • 3.86% 平均交换分区利用率(1GB)

观测结果:<


站内搜索
相关文章
◎TestNG使Java单元测试轻而易举
◎诊断 Java 代码:单元测试与自动化代码分析协同工作
◎JBuilder单元测试实例
◎使用Rational Software Architect
◎怎样使用Junit Framework进行单元测试的编写
◎“白盒”静动测试两齐全
热门文章
◎全面介绍单元测试
◎单元测试------理论篇
◎Java内存泄漏分析
◎单元测试作业指导书(一)
◎白盒测试中的六种覆盖方法
◎junit实现过程
◎JUnit起步
◎单元测试方法
◎C/C++单元测试问答(摘要)
◎单元测试的基本方法
◎nunit使用资料
◎如何挑选白盒测试工具
◎NUnit快速入门
◎在Eclipse中使用JUnit
◎Java的内存泄漏
◎单元测试的小技巧介绍和举例
◎Linux:让内存不再泄漏
◎单元测试指导
◎为什么要进行单元测试?
◎单元测试作业指导书(二)
◎“白盒”静动测试两齐全
◎数据库程序的单元测试
◎静态测试
◎CppUnit - 测试驱动开发入门
◎ant结合junit进行软件自动测试
◎用cppUnit进行单元测试的步骤
◎单元测试浅析
◎java单元测试篇:使用clover为java代码的junit测试做覆盖率分析(一)
◎java的单元自动化测试---jtest
◎单元测试作业指导书(三)
◎单元测试作业指导书(四)
◎java单元测试篇:使用clover为java代码的junit测试做覆盖率分析(三)
◎使用 Visual Studio 2005 Team System 进行单元测试并生成用于 Unit Te...
◎C语言单元测试框架-Check
◎EasyMock与JMock的比较
◎JUnit中如何测试异常
◎Java程序的单元测试
◎J2EE应用的性能调整--JPROBE使用篇
◎怎样使用Junit Framework进行单元测试的编写
◎单元测试和事先测试开发
◎使用NUnit在.Net编程中进行单元测试
◎JBuilder单元测试实例
◎单元测试实践(VB版)
◎感悟测试驱动开发
◎C语言高效编程的的四招技巧
◎软件测试技术获重大突破
◎有关Junit的多线程测试
◎使用ant编译、运行junit、以及检查编码
◎强化Visual Studio单元测试
◎JCoverage使用

Google提供的广告