《LTP性能测试工具详细介绍》由会员分享,可在线阅读,更多相关《LTP性能测试工具详细介绍(37页珍藏版)》请在金锄头文库上搜索。
1、. . LTP工具说明1LTP测试套件21.1简介21.2源目录结构22LTP安装32.1下载32.2编译32.3安装说明43LTP测试套件结构说明53.1概述53.2目录介绍53.3LTP执行原理54LTP测试套件测试容54.1LTP测试套件测试容54.1.1commands64.1.2kernel64.1.3kdump64.1.4network64.1.5realtime64.1.6open_posix_testsuite74.1.7misc74.2测试方法说明74.2.1commands模块容描述与实现方法74.2.2kernel84.2.3network144.2.4open_posi
2、x_testsuite164.2.5realtime175LTP测试套件配置详细185.1networktests.sh脚本配置185.2 networkstress.sh配置205.3open_posix_testsuite测试套件235.4realtime配置245.5 mm脚本的配置255.6 io脚本配置255.7 filecaps的配置255.8 tpm_tools的配置265.9 tcore的配置265.10io_floppy的配置265.11io_cd的配置265.12cpuhotplug的配置265.13adp.sh的配置275.14autofs1.sh和autofs4.sh的
3、配置275.15exportfs.sh的配置285.16isofs.sh的配置285.17ltpdmmapper.sh的配置295.18ltpfslvm.sh的配置与要求295.19ltpfsnolvn.sh的配置与要求305.20ltp-scsi_debug.sh的配置与要求305.21sysfs.sh的配置与要求305.22rpctirpc的配置与要求305.23test_selinux.sh的配置与要求315.24smack的配置和要求325.25perfcounters的配置与要求335.26can的配置与要求335.27test_robind.sh的配置336LTP测试套件使用说明3
4、46.1概述346.2初始测试356.2.1runltp使用说明356.2.2runalltests.sh脚本说明371LTP测试套件1.1简介LTP(LinuxTest Project)是SGI、IBM、OSDL和Bull合作的项目,目的是为开源社区提供一个测试套件,用来验证Linux系统可靠性、健壮性和稳定性。LTP测试套件是测试Linux核和核相关特性的工具的集合。该工具的目的是通过把测试自动化引入到Linux核测试,提高Linux的核质量。LTP提供了验证linux系统稳定性的标准,设计标准的压力场景,通过对linux系统进行压力测试,对系统的功能、性能进行分析,并以此确定linux系
5、统的可靠性、健壮性和稳定性。1.2源目录结构 如表1,是对LTP源包目录结构的描述:INSTALLLTP安装配置指导文档READMELTP介绍CREDITS记录对LTP有很大贡献的人COPYINGGNU Public LicenseChangeLog描述版本变化ltpmenu规划执行LTP的图形化界面接口MakefileLTP顶层目录的Makefile,负责编译安装pan、testcases和toolsrunalltests.sh顺序运行全部测试例程并且报告结果的脚本doc/*工程文档包含工具和库函数使用手册,描述各种测试include/*通用的头文件目录lib/*通用的库函数目录testca
6、ses/*包含在LTP下运行和bin目录下的所有测试用例和testscripts/*存放分组的测试脚本runtest/*为自动测试提供命令列表pan/*测试的驱动装置。具备随即和并行测试的能力scratch/*存放零碎测试的东西tools/*存放自动化测试脚本和辅助工具表1 LTP源代码结构2LTP安装2.1下载LTP是一项动态工程,LTP源包命名方式一般为:ltp-yyyymmdd。目前版本为ltp-20110228。以下均为ltp-20110228版本的配置,官网地址为: :/ 从官方下载最新的LTP测试套件包,解压后进入ltp源目录。按照表2方法进行快速安装,在编译成功后会自动安装到/o
7、pt/ltp目录下。rootserver20 ltp#./configurerootserver20 ltp# makerootserver20 ltp# make installIDcheck.sh检查系统是否缺少执行LTP测试套件所需的用户和用户组,如果缺少则为LTP测试套件创建所需的用户和用户组。runltplite.sh这个脚本用来测试LTP安装,也可用来对测试套件的子项目进行测试。详情参阅脚本。runltp这个脚本能够测试LTP测试套件主要项目。其中包括:- 硬盘 I/O 测试。- 存管理压力测试。- IPC 压力测试。- SCHED测试。- 命令功能的验证测试。- 系统调用功能的验
8、证测试。ver_linux这个脚本是获取硬件、软件、环境信息。runalltests.sh测试容同runltp,不同点在于runltp可以指定测试项进行组合测试,而runalltests.sh则会全部执行。testscripts列举了所有的子系统测试脚本,脚本说明见下文。adp_children.shsysfs.shltp-aiodio.shltpstress.shrunpan.shnetworkstress.shadp.shadp.shautofs1.shautofs4.shdiskio.shexportfs.shfs_ro_testsisofs.shload_stress_all_kern
9、el_modules.shltpdmmapper.shltpfslvm.shltpfslvm.shltp-scsi_debug.shmath.shnetworktests.shrunEALtests.shrunpan.shsyscall.shtet_containers.shtest_filecaps.shtest_fs_bind.shtest_realtime.shtest_robind.shtest_selinux.shrunpan.sh表2 编译2.3安装说明在安装编译ltp之前,需要确定linux系统“make”版本,ltp编译需要“make”版本最低要求为“make 3.80”,优先
10、使用“make 3.81”版本。为了编译和使用ltp-scanner,linux系统需要安装bison/yacc和flex包。详细安装方法可参照说安装说明文件INSTALL(源包目录)。3LTP测试套件结构说明3.1概述LTP编译成功后,包含三大部分:测试案例、测试脚本、测试驱动。测试案例目录为testcases/,testcases/包含了测试案例和案例脚本;测试脚本主要目录为testscripts/,里面包含了文件系统,磁盘,核,存等测试脚本;测试驱动目录为bin/,该目录存放了ltp各种驱动脚本,如ltp-pan,ltp-scanner等。3.2目录介绍 表3 描述了ltp编译后各目录存
11、储的容和功能:目录名功能bin存放LTP测试的一些辅助脚本results测试结果默认存储目录testcases测试项集output测试日志默认存储目录share脚本使用说明目录runtest测试驱动(用于testscripts的测试脚本和testcases测试项目)lib通用的库函数目录表3 目录描述3.3LTP执行原理从一个测试命令文件(或脚本)中读取所测条目需要执行的命令行,然后等待该项测试的完毕,并记录详细的测试输出。默认状态下pan会随机的选择一个命令行来运行,可以指定在同一时间要执行测试的次数。pan会记录测试产生的详细的格式复杂的输出,但它不进行数据的整理和统计,数据整理统计的工作
12、由scanner来完成,scanner是一个测试结果分析工具,它会理解pan的输出格式,并通过表格的形式总结测试passed或failed的情况。简单地说,LTP测试套件通过执行测试脚本runalltests.sh(或runltp或runltplite.sh)或testscripts的测试脚本,调用驱动程序pan执行testcases的测试项目,输出测试结果,并利用scanner整理数据。4LTP测试套件测试容4.1LTP测试套件测试容以ltp-20110228版本为例(目前是最新)。ltp-20110228测试容主要包括以下几大部分:commands(常用命令测试),kernel(核模块与其
13、相关模块,如文件系统,磁盘读写等),kdump(核转储),network(网络),realtime(系统实时性)open_posix_testsuite(posix标准),misc(崩溃,核心转储,浮点运算等)。以下是具体容:4.1.1commandscpiomvejectmkdirgziplnmailcpsusizeatobjdumpcronnmlogroatelddtarldunzipfilear表4 commands4.1.2kernel 这个模块主要对系统的文件系统、进程通信、模块管理、存、系统调用、系统调度、磁盘读写、安全等进行功能和压力测试。详细容如表5所示:fsconnectorsIpcmoduleptytimerscontainershotplugnumaschedtracingcontrolersincludemce-testperformance_counterssecuritydevice-driversiomempower_managementsyscalls表5 kernel相关测试容4.1.3kdump kdump是系统崩溃转储功能,这个模块是对kdump工具实现崩溃转储的测试。4.1.4network network功能点非常多,包括dhcp,nfs,rpc,iproute等,具体如表6所示:caniprout