Longan项目用于内核离线自动化压力测试。
本项目基于avocado框架(https://github.com/avocado-framework/avocado),配套使用avocado测试套件(https://github.com/avocado-framework-tests/avocado-misc-tests),对内核调度、内存、IO等子系统进行压测。
快速开始
$ cd tlinux_autotest_offline
$ chmod +x runall.sh
$ ./runall.sh -t 60
测试分为avocado测试套件以及独立测试,后者可以脱离avocado框架独立运行。目前,前者无法控制测试总时长,后者可以通过加-t
参数来控制。使用runall脚本串行跑所有测试时,同样通过-t
参数控制独立测试的时长。
summary输出测试结果PASS、FAIL、SKIP。
如果希望有更详细的log或测试报告,可以使用avocado框架。avocado框架运行测试支持输出多样式测试报告,比如html、json、tap、xml等。
跑测试用例需要用到avocado框架。本项目使用的avocado框架为93.0。 python版本:3.6
chmod +x tlinux_autotest_offline/test_env/avocado/93/avocado_install.sh
./tlinux_autotest_offline/test_env/avocado/93/avocado_install.sh
测试需要运行docker服务。
安装docker软件包
# TencentOS Server 2 安装docker-ce
yum install tlinux-release-docker-ce && yum install docker-ce
# TencentOS Server 3 安装docker-ce
yum install tencentos-release-docker-ce && yum install docker-ce
运行docker服务
systemctl start docker
使用下面的命令确认docker服务已经启动没有报错
docker -v
# 或者
docker ps
机器需要有数据盘vdb、vdc,io读写磁盘测试可能会破坏该盘上的数据。 系统盘vda建议50G以上,数据盘建议各40G以上。
内核版本需要支持挂载ext4、xfs文件系统。
这种模式下,请使用runall.sh
,接受参数t,将指定stress_test
中所有测试的运行时长,如果不指定,将使用每个测试各自的默认测试时长。此参数不影响general_test
中的测试。
使用时请先注意时长,在脚本中固定写死,一般为test_time
。
测试用例都在文件夹testcases中。按是否基于avocado运行框架分为两部分:
io压测特别说明
需要下载镜像文件 tlinux-64bit-v2.4.20200929.tar
放在路径 testcases/stress_test/io_integration_test/io_integration_test.sh.data/
下。
下载链接为:https://share.weiyun.com/vQloHzrt 密码:3r7wuc
net网络压测特别说明
可以使用net文件夹下提供的sshpass-1.06-2.tl2.x86_64.rpm,离线安装sshpass
rpm -Uvh --force --nodeps sshpass-1.06-2.tl2.x86_64.rpm
或者在配置好yum源后在线安装
yum install -y sshpass
使用时需要修改测试用例,给出通信双方机器。
每个测试用例的起名类似以下规则:
dirname
test.sh.data/
xxx
test.sh
或者
dirname
test.py.data/
xxx
test.py
其中test.sh
与test.py
为主要的测试启动脚本。请在运行前确保脚本是可执行的,否则
chmod +x test.sh
chmod +x test.py
avocado run path/xxx.sh
./path/xxx.sh -param1 xx -param2 xx
以stress_test为例,可以运行测试的机器参数为:
每个测试下可能会有一个以result.txt或者result.log结尾的文件。此文件不参与测试,仅作为测试输出样例。 注意:测试时长请以脚本里写的为主。测试输出样例只是样例。
要重复使用测试工具进行测试,请重启机器再进行测试,并确保/dev/vdb和/dev/vdc盘未挂载,且为正常可挂载状态。
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )