LTP(Linux Test Project)学习(五)——LTP代码学习

本文介绍了LTP(Linux Test Project)代码学习的两种方法,强调了查看官方文档的重要性,并详细阐述了代码结构和关键概念,如封装脚本、用例编写规范、错误级别以及C代码和shell代码的测试案例。建议读者通过实际操作和调试来提升对LTP的理解和使用技巧。
摘要由CSDN通过智能技术生成

LTP代码学习方法主要介绍两个步骤,个人认为效果最好,见效也快。

方法1 查看官方介绍文档(如果你最开始接触ltp,那么步骤1一定要看)

1)用例Makefile配置介绍,见:https://github.com/linux-test-project/ltp/wiki/BuildSystem
用例介绍,见:https://github.com/linux-test-project/ltp/wiki/Test-Writing-Guidelines
上面两个网址,是LTP官方Guidelines,学习LTP时请仔细阅读,方能熟悉里面代码的写作格式。

2)LTP git仓库doc资料,主要包括:
README.md
doc/ltp-howto.txt
doc/style-guide.txt
doc/test-writing-guidelines.txt
doc/ltp-run-files.txt
等等(如果有时间最好全部大概浏览一遍)。

3)自己不太想多写什么介绍性文字,因为ltp的官方资料个人认为介绍非常全面,完全不需要别人再浪费口舌,但是还是写点注意(之前别人经常疑问的地方)。

a. ltp编译后目录,用例二进制全部放在testcases/bin,个人习惯单独cd进去执行,但是执行前请执行 PATH=$PATH:/home/ltp/testcases/bin 将其目录添加到环境变量,这是因为ltp本身有些框架性二进制文件,比如tst_brk等,用例执行会直接tst_brk调用,如果不添加到环境变量则报错命令无法找到,比如:
./wc01.sh
./wc01.sh: line 24: .: tst_test.sh: file not found
其实tst_test.sh就在 testcases/bin 下面。
(其实这条ltp已经提到,只是很少人去注意,然后大部分ltp的介绍性文档,都不会写的这么细,都仅仅告诉你怎么执行)

b. 每个用例均包括setup(void)和clean(void)函数进行环境初始化和清理,然后用例test01(void)、test02(void)等方式命名(test没太大规定,可以特性名称_test01均可)。

c. ltp内部包含了很多的封装脚本,基本满足用例执行的检查,报错打印等等,比如
需要root用户权限执行::

tst_require_root()

执行成功or失败,打印:

tst_res(TPASS, "getenv(" ENV1 ") = '"ENV_VAL "'");
tst_res(TFAIL, "getenv(" ENV1 ") = '%s', expected '"ENV_VAL "'", ret);

创建打开关闭:

SAFE_MKDIR(MNTPOINT, 0777);
SAFE_MKFS(tst_device->dev, tst_device
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hello小崔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值