浅析ltp测试流程
2016-04-02 18:53
801 查看
简单分析ltp的测试流程和测试项
LTP — Linux Test Project的缩写
LTP用来验证Linux系统可靠性、健壮性和稳定性。LTP测试套件是测试Linux内核和内核相关特性的工具的集合。该工具的目的是通过把测试自动化引入到Linux内核测试,提高Linux的内核质量。LTP提供了验证linux系统稳定性的标准,设计标准的压力场景,通过对linux系统进行压力测试,对系统的功能、性能进行分析,并以此确定linux系统的可靠性、健壮性和稳定性。
buildroot自带ltp的测试选项,配置ltp后在生成的文件系统中就可以进行ltp测试
Target packages —>
Debugging, profiling and benchmark —>
ltp-testsuite needs a toolchain w/ RPC, threads
生成文件系统,ltp测试程序位于:
/usr/runltp —– 用于执行的测试脚本
/usr/testcases —– 测试项目录,里面包含各种测试项脚本
/usr/rentest —– 可执行的测试项程序
由于ltp的测试使文件系统的增大,可使用网络文件系统。
.
├── configure.ac
├── COPYING
├── doc —— 工程文档包含工具和库函数使用手册,描述各种测试
├── execltp.in
├── IDcheck.sh
├── include
├── INSTALL
├── lib
├── ltpmenu —— 规划执行LTP的图形化界面接口
├── m4
├── Makefile —— LTP顶层目录的Makefile,负责编译安装pan、testcases和tools
├── Makefile.release
├── pan —— 测试的驱动装置。具备随即和并行测试的能力
├── README
├── README.kernel_config
├── runalltests.sh
├── runltp
├── runltplite.sh
├── runtest —— 为自动测试提供命令列表
├── scenario_groups
├── scripts
├── testcases ——– 包含在LTP下运行和bin目录下的所有测试用例和链接
├── testscripts —— 存放分组的测试脚本
├── TODO
├── tools —— 存放自动化测试脚本和辅助工具
├── utils
├── ver_linux
└── VERSION
直接运行./runltp测试,为默认自动化系统测试
直接运行可执行测试项,需要参数的可参考/usr/testcases
运行测试脚本后,调用pan中的测试驱动程序ltp-pan
a. ltp-pan做的第一件事,统计这次测试testcases中的所有测试脚本的测试项数目,用于测试完成后的统计输出和判断这次测试是彻底完成还是异常终止。
b. 调用testcases中的所有测试脚本中的测试项,进行逐个的测试。
该测试项是对寄存器的循环读写,是测试终止。
解决方法:
修改内核配置,使fs/proc/Makefile不编译iorw.c,注释
LTP工具说明
什么是ltp
LTP — Linux Test Project的缩写LTP用来验证Linux系统可靠性、健壮性和稳定性。LTP测试套件是测试Linux内核和内核相关特性的工具的集合。该工具的目的是通过把测试自动化引入到Linux内核测试,提高Linux的内核质量。LTP提供了验证linux系统稳定性的标准,设计标准的压力场景,通过对linux系统进行压力测试,对系统的功能、性能进行分析,并以此确定linux系统的可靠性、健壮性和稳定性。
LTP测试
buildroot自带ltp的测试选项,配置ltp后在生成的文件系统中就可以进行ltp测试make menuconfig
Target packages —>
Debugging, profiling and benchmark —>
ltp-testsuite needs a toolchain w/ RPC, threads
make
生成文件系统,ltp测试程序位于:
/usr/runltp —– 用于执行的测试脚本
/usr/testcases —– 测试项目录,里面包含各种测试项脚本
/usr/rentest —– 可执行的测试项程序
由于ltp的测试使文件系统的增大,可使用网络文件系统。
LTP 的目录结构
.├── configure.ac
├── COPYING
├── doc —— 工程文档包含工具和库函数使用手册,描述各种测试
├── execltp.in
├── IDcheck.sh
├── include
├── INSTALL
├── lib
├── ltpmenu —— 规划执行LTP的图形化界面接口
├── m4
├── Makefile —— LTP顶层目录的Makefile,负责编译安装pan、testcases和tools
├── Makefile.release
├── pan —— 测试的驱动装置。具备随即和并行测试的能力
├── README
├── README.kernel_config
├── runalltests.sh
├── runltp
├── runltplite.sh
├── runtest —— 为自动测试提供命令列表
├── scenario_groups
├── scripts
├── testcases ——– 包含在LTP下运行和bin目录下的所有测试用例和链接
├── testscripts —— 存放分组的测试脚本
├── TODO
├── tools —— 存放自动化测试脚本和辅助工具
├── utils
├── ver_linux
└── VERSION
LTP的运行流程
1.运行ltp测试
./runltp
直接运行./runltp测试,为默认自动化系统测试
2. 单个测试项的手动运行
直接运行可执行测试项,需要参数的可参考/usr/testcases
3. 测试执行流程
运行测试脚本后,调用pan中的测试驱动程序ltp-pana. ltp-pan做的第一件事,统计这次测试testcases中的所有测试脚本的测试项数目,用于测试完成后的统计输出和判断这次测试是彻底完成还是异常终止。
b. 调用testcases中的所有测试脚本中的测试项,进行逐个的测试。
中途卡掉测试项分析
1. proc01 -m -128
该测试项是对寄存器的循环读写,是测试终止。解决方法:
修改内核配置,使fs/proc/Makefile不编译iorw.c,注释
#proc -y += iorw.o
参考
LTP工具说明
相关文章推荐
- Linux Kernel 4.0 RC5 发布!
- Linux 自检和 SystemTap
- 一张图看尽 Linux 内核运行原理
- Linux内核链表实现过程
- Linux下Web性能压力测试工具http_load使用教程
- PHP内核探索之解释器的执行过程
- 深入理解PHP内核(二)之SAPI探究
- Web压力测试工具:http_load、webbench、ab、Siege使用方法
- Linux下Web网站压力测试工具Webbench使用教程
- C++中Semaphore内核对象用法实例
- 一张图看尽Linux内核运行原理
- 深入理解PHP内核(一)
- PHP内核探索之变量
- 深入php内核之php in array
- 压力测试中需要掌握的几个基本概念
- 浅谈Linux内核创建新进程的全过程
- 使用Apache ab工具对Apache服务器进行简单的压力测试
- apache ab工具页面压力测试返回结果含义解释