,," /> " />

目 录CONTENT

文章目录

LTP 测试套件说明

Administrator
2024-02-22 / 0 评论 / 0 点赞 / 24 阅读 / 38906 字

官方代码仓库:https://github.com/linux-test-project/ltp

请点击阅览 LTP使用说明.doc

1.LTP测试套件

LTP(Linux Test Project)是SGI、IBM、OSDL和Bull合作的项目,目的是为开源社区提供一个测试套件,用来验证Linux系统可靠性、健壮性和稳定性。LTP测试套件是测试Linux内核和内核相关特性的工具的集合。该工具的目的是通过把测试自动化引入到Linux内核测试,提高Linux的内核质量。LTP提供了验证linux系统稳定性的标准,设计标准的压力场景,通过对linux系统进行压力测试,对系统的功能、性能进行分析,并以此确定linux系统的可靠性、健壮性和稳定性。

2.LTP安装

2.1 下载 4

2.2 编译 4

IDcheck.sh

检查系统是否缺少执行LTP测试套件所需的用户和用户组,如果缺少则为LTP测试套件创建所需的用户和用户组。

runltplite.sh

这个脚本用来测试LTP安装,也可用来对测试套件的子项目进行测试。详情参阅脚本。

runltp

这个脚本能够测试LTP测试套件主要项目。其中包括:

- 硬盘I/O 测试。

- 内存管理压力测试。

- IPC 压力测试。

- SCHED测试。

- 命令功能的验证测试。

- 系统调用功能的验证测试。

ver_linux

这个脚本是获取硬件、软件、环境信息。

runalltests.sh

测试内容同runltp,不同点在于runltp可以指定测试项进行组合测试,而runalltests.sh则会全部执行。

testscripts

列举了所有的子系统测试脚本,脚本说明见下文。

adp_children.sh

sysfs.sh

ltp-aiodio.sh

ltpstress.sh

runpan.sh

networkstress.sh

adp.sh

adp.sh

autofs1.sh

autofs4.sh

diskio.sh

exportfs.sh

fs_ro_tests

isofs.sh

load_stress_all_kernel_modules.sh

ltpdmmapper.sh

ltpfslvm.sh

ltpfslvm.sh

ltp-scsi_debug.sh

math.sh

networktests.sh

runEALtests.sh

runpan.sh

syscall.sh

tet_containers.sh

test_filecaps.sh

test_fs_bind.sh

test_realtime.sh

test_robind.sh

test_selinux.sh

runpan.sh

3.LTP测试套件结构说明

 LTP编译成功后,包含三大部分:测试案例、测试脚本、测试驱动。测试案例目录为testcases/,testcases/包含了测试案例和案例脚本;测试脚本主要目录为testscripts/,里面包含了文件系统,磁盘,内核,内存等测试脚本;测试驱动目录为bin/,该目录存放了ltp各种驱动脚本,如ltp-pan,ltp-scanner等。

4.LTP测试套件测试内容

以ltp-20110228版本为例(目前是最新)。ltp-20110228测试内容主要包括以下几大部分:commands(常用命令测试),kernel(内核模块及其相关模块,如文件系统,磁盘读写等),kdump(内核转储),network(网络),realtime(系统实时性)open_posix_testsuite(posix标准),misc(崩溃,核心转储,浮点运算等)。

4.1 LTP测试套件测试内容 7

4.1.1  commands 7

4.1.2  kernel 8

4.1.3  kdump 8

4.1.4  network 8

4.1.5  realtime 8

4.1.6  open_posix_testsuite 9

4.1.7  misc 9

4.2 测试方法说明 9

4.2.1  commands模块内容描述及实现方法 9

4.2.2  kernel 11

4.2.3  network 16

4.2.4  open_posix_testsuite 18

4.2.5  realtime 20

5.LTP测试套件配置详细

5.2  networkstress.sh配置 26

5.3  open_posix_testsuite测试套件 30

5.4  realtime配置 31

5.5  mm脚本的配置 32

5.6  io脚本配置 32

5.7  filecaps的配置 32

5.8  tpm_tools的配置 33

5.9  tcore的配置 33

5.10  io_floppy的配置 34

5.11  io_cd 的配置 34

5.12  cpuhotplug的配置 34

5.13  adp.sh的配置 35

5.14  autofs1.sh和autofs4.sh的配置 36

5.15  exportfs.sh的配置 36

5.16  isofs.sh的配置 37

5.17  ltpdmmapper.sh的配置 37

5.18  ltpfslvm.sh的配置及要求 38

5.19  ltpfsnolvn.sh的配置及要求 39

5.20  ltp-scsi_debug.sh的配置及要求 39

5.21  sysfs.sh的配置及要求 39

5.22  rpctirpc的配置及要求 40

5.23  test_selinux.sh的配置及要求 42

5.24  smack的配置和要求 43

5.25  perfcounters的配置及要求 43

5.26  can的配置及要求 44

5.27  test_robind.sh的配置 44

6.LTP测试套件使用说明

6.1 概述 45

6.2 初始测试 47

6.2.1  runltp使用说明 47

6.2.2  runalltests.sh脚本说明 48

6.3 LTP压力测试

7.注意事项

1.解压

1.tar xvf ltp-master-20210927.tar.bz2 -m

2.编译

# yum -y install gcc git make pkgconf autoconf automake bison flex m4 kernel-headers glibc-headers libtirpc libtirpc-devel psmisc
 # cd ltp          # ltp的目录,可能为LTP-xxx
# make autotools
# ./configure --prefix=/var/ltp/objdir_ltp CFLAGS=-s --host=x86_64 --with-open-posix-testsuite --with-realtime-testsuite --with-metadata-generator
./configure --prefix=/var/ltp/objdir_ltp CFLAGS=-s --host=aarch64 --with-open-posix-testsuite --with-realtime-testsuite --with-metadata-generator

注意:

--prefix=/var/ltp/objdir_ltp需要输入绝对路径

# make -j64
# make install

3.测试前环境准备:

销毁所有虚机。创建虚机后,cgroup目录下会多出一个machine.slice目录用来管控虚机,这个目录的存在会导致很多cgroup相关的测试失败。

不能在启动参数中加入hugepage配置。大页内存使用会导致内存极限压力测试失败。

安装killall命令。有用例需要使用此命令。

4.删除测试项

cd /var/ltp/objdir_ltp/runtest

LTP: starting can_bcm01 导致内核panic,ltp中会有如下两个地方测试can_bcm01

./cve:70:cve-2021-3609 can_bcm01
./can:3:can_bcm01 can_bcm01

5.测试命令

./runltp -p -o output.log -l ltp.log -C failtestcases.txt -d /tmpdir

0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区