ltp压力测试结果分析脚本
最近工作性质发生了改变,在做操作系统方面的测试。接手的第一个任务是做ltp stress。测试内核稳定性。
做完之后会结果进行统计分析。因为统计的内容比较多,都是通过shell命令行进行操作。于是编写了一个简单的shell脚本。
具体脚本内容如下:
#!/bin/bash
CASENUM=0 #定义了一个全局变量
passnum()
{
        echo "=============="
        pass=`grep PASS /home/ltp/ltp.log | wc -l`#统计执行用例pass的次数。
        echo "pass的用例个数 $pass"
}
failnum()
{
        echo "=============="
        fail=`grep FAIL /home/ltp/ltp.log | wc -l`#统计执行用例fail的次数
        echo "fail的用例个数 $fail"
}
casenum()
{
        echo "=============="
        pass=`grep PASS /home/ltp/ltp.log | wc -l`
        fail=`grep FAIL /home/ltp/ltp.log | wc -l`
        let CASENUM=($pass+$fail)#统计总的执行用例的次数(这里可以进行优化)
        echo "总的用例个数 $CASENUM"
}
cpuload()
{
        echo "==============="
        ldavg1=`(sar -q -f /home/ltp/sar.out| tail -n 1|awk '{print $4}')`
        echo "ladvg_1:$ldavg1"
ldavg5=`(sar -q -f /home/ltp/sar.out| tail -n 1|awk '{print $5}')`
        echo "ladvg_5  $ldavg5 "
ldavg15=`(sar -q -f /home/ltp/sar.out|tail -n 1|awk '{print $6}')`
        echo "ldavg_15 $ldavg15"
}
cpuuse()
{
        echo "==============="
        #use=`(sar -u -f /home/ltp/sar.out| sed -n '$p' |awk '{print $3}')`
        use=`sar -u -f /home/ltp/sar.out| tail -n 1|awk '{print $3}'`
        #system=`(sar -u -f /home/ltp/sar.out| sed -n "$p" |awk '{print $5}')`#写sed命令的时候一定得注意用单引号编写,sed -n "$p" 这种写法错误,导致无法找到对应数据。
        system=`(sar -u -f /home/ltp/sar.out| tail -n 1 |awk '{print $5}')`
        cpuuse=`awk 'BEGIN{printf "%.2f%%\n",('$use'+'$system')}'`
        echo "CPU使用率为:$cpuuse"
}
memuse()
{
        echo "==============="
        mem=`(sar -r -f /home/ltp/sar.out| tail -n 1 |awk '{printf "%.2f%%\n", $4}')`
        echo "内存使用率为:$mem"
}
swapuse()
{
        echo "==============="
        swap=`(sar -S -f /home/ltp/sar.out|tail -n 1|awk '{printf "%.2ff%%\n", $4}')`
        echo "swap平均使用率为:$swap"
}
success()
{
        echo "==============="
        pass=`(grep PASS /home/ltp/ltp.log | wc -l)`
        succ=`awk 'BEGIN{printf "%.2f%%\n",('$pass'/'$CASENUM')*100}'`
        echo "成功比率为:$succ"
}
failcase()
{
        echo "==============="
        failcase=`grep FAIL /home/ltp/ltp.log |sort|uniq|wc -l`
        echo "faicase总数为: $failcase"
        grep FAIL /home/ltp/ltp.log |sort|uniq>/home/ltp/failcase.txt
        echo "具体的fail列表在生成的/home/ltp/failcase.txt文件中请查看是否存在重复"
}
passnum
failnum
casenum
cpuload
cpuuse
memuse
swapuse
success
failcase
在调试脚本的时候,总结了以下几个小点:
1.需要的到某个命令的返回值,定义一个变量等于这个命令,但是这边命令必须用``(大键盘数字1左边的那个按钮反单引号)扩住,否则就不执行这个命令
2.编写一个函数之后,一定要在下边写一下执行函数名称,否则看不到返回结果
3.写sed命令的时候一定得注意用单引号编写,sed -n "$p" 这种写法,导致无法找到对应数据。应该写为sed -n '$p'也是长知识了,这个经实践发现写成
sed -n"2,$p"这种格式是提示不对的,然后改成单引号之后就好了,还是sed不熟练。
ltp压力测试结果分析脚本的更多相关文章
- 【转载】ltp压力测试结果分析脚本
		
博客园 首页 新随笔 联系 管理 订阅 随笔- 8 文章- 0 评论- 0 ltp压力测试结果分析脚本 最近工作性质发生了改变,在做操作系统方面的测试.接手的第一个任务是做ltp stres ...
 - [转贴]LTP--linux稳定性测试 linux性能测试 ltp压力测试 ---IBM 的 linux test project
		
https://blog.csdn.net/melody157398/article/details/24354415 LTP--linux稳定性测试 linux性能测试 ltp压力测试 ---I ...
 - LTP--linux稳定性测试 linux性能测试 ltp压力测试 ---IBM 的 linux test project
		
LTP--linux稳定性测试 linux性能测试 ltp压力测试 ---IBM 的 linux test project Peter盼 2014-04-23 11:25:49 20302 收藏 ...
 - LTP--linux稳定性测试 linux性能测试 ltp压力测试 内核更新 稳定性测试
		
LTP--linux稳定性测试 linux性能测试 ltp压力测试 zhangzj1030关注14人评论33721人阅读2011-12-09 12:07:45 说明:在写这篇文章之前,本人也不曾了 ...
 - LTP--linux稳定性测试 linux性能测试 ltp压力测试 ltp-pan
		
LTP--linux稳定性测试 linux性能测试 ltp压力测试 zhangzj1030关注14人评论33710人阅读2011-12-09 12:07:45 说明:在写这篇文章之前,本人也不曾了 ...
 - Monkey进行压力测试定位问题分析
		
Monkey测试的log分析,我们可以通过几个关键词来判断测试是否通过. 分析log方法一(粗糙一点): 1)Monkey finished打开LOG,查看log的最下端,是否有类似以下字段:## ...
 - Android App 压力测试 monkeyrunner
		
Android App 压力测试 第一部分 背景 1. 为什么要开展压力测试? 2. 什么时候开展压力测试?第二部分 理论 1. 手工测试场景 2. 自动测试创建 3. Monkey工具 4. ADB ...
 - jmeter简单得压力测试
		
Jmeter教程 简单的压力测试 Jmeter是一个非常好用的压力测试工具. Jmeter用来做轻量级的压力测试,非常合适,只需要十几分钟,就能把压力测试需要的脚本写好. 阅读目录 什么是压力测试 ...
 - 工具使用-----Jmeter教程 简单的压力测试
		
摘抄于http://www.cnblogs.com/TankXiao/p/4059378.html 以下是英文版的,中文版的也差不多的 Jmeter是一个非常好用的压力测试工具. Jmeter用来做 ...
 
随机推荐
- English Grammar - Subject Clause
			
that引导主语从句 一般置于句末,偶尔也置于句首 that引导的主语从句置于句首 That the seas are being overfished has been known for year ...
 - geodjango七日学习笔记  (7.30整理本地笔记上传到网络)
			
第一天进行到现在,在开端的尾巴,想起来写一个学习笔记, 开发环境已搭好,用的是pycharm 环境是本机已有的interpreter python3.7 接下来要做的是新建一个geodjango项 ...
 - UML-操作契约总结
			
1.操作契约属于什么? 属于用例模型 如图: 2.操作契约在那个阶段引入? 在细化阶段,并非初始阶段. 3.哪些需要写操作契约? 1).最复杂的系统操作 2).最微妙的系统操作
 - python库文件下载地址(持续更新)
			
numpy https://pypi.org/project/numpy/#files PIL https://pypi.org/simple/pillow/ cv2 https://pypi.tun ...
 - python-day4爬虫基础之正则表达式
			
正则表达式:(字符串匹配) 使用单个字符串来描述匹配一系列符合某个句法规则的字符串 是对字符串操作的一种逻辑公式 应用场景:处理文本和数据 正则表达式过程:依次拿出表达式和文本中的字符比较,如果每一个 ...
 - GPS坐标与百度坐标转换
			
百度对外接口的坐标系,都是经过国家测绘局加密处理,符合国家测绘局对地理信息保密要求. 国际经纬度坐标标准为WGS-84,国内必须至少使用国测局制定的GCJ- 02,对地理位置进行首次加密.百度坐标在此 ...
 - 蓝桥杯 Car的旅行路线 (预处理+最短路径)
			
https://www.luogu.org/problem/P1027 题目描述 又到暑假了,住在城市A的Car想和朋友一起去城市B旅游.她知道每个城市都有4个飞机场,分别位于一个矩形的4个顶点上,同 ...
 - HDU-1875 畅通工程再续(最小生成树+判断是否存在)
			
http://acm.hdu.edu.cn/showproblem.php?pid=1875 Problem Description 相信大家都听说一个“百岛湖”的地方吧,百岛湖的居民生活在不同的小岛 ...
 - oracle 查询表空间
			
测试用户连接C:\Users\ZP>sqlplus /nologconn hbcxuser/hbcxpass --查看所有表空间 select * from user_tablespaces-- ...
 - 1年6亿美元!Uber小费功能或引行业变革
			
当一个行业由稚嫩走向成熟,必然要在大方向上面对两个选择--一是继续在行业内深挖,二是不断向外围扩张.就像电商行业原本只是纯粹的交易中介形态,现在既不断深挖垂直电商新模式,又继续拓展新业务试图玩转跨界. ...