目录
[++++4.1 PC端打开串口软件++++](#4.1 PC端打开串口软件)
[++++5.2 串口接收MD5值校验++++](#5.2 串口接收MD5值校验)
[++++6 附件++++](#6 附件)
[++++附件1 串口数据收发测试脚本++++](#附件1 串口数据收发测试脚本)
[++++附件2 MD5码校验测试脚本++++](#附件2 MD5码校验测试脚本)
1、概要
设计串口数据压力测试自动化脚本,并对脚本即相关配测工具使用方法进行说明。
2、测试环境准备
2.1PC端准备
1、PC端安装配测串口软件:sscom
2、PC端根据测试需要准备一定大小的文件(本说明以1M数据文件为例进行测试)
2.2设备端准备
1、设备端提前将ttysTest文件夹放置到系统中
3、工具介绍
1、sscom 软件可打开相应串口,设置相应波特率,可根据需要将接收数据保存到文件,同时可以发送文件到设备端

2、ttysTest.sh文件为串口收发测试脚本,reciveMD5Test.sh文件为接收数据MD5检验脚本
4、数据发送测试
4.1 PC端打开串口软件
PC端打开sscom测试软件,并设置正确的串口号跟波特率后打开串口

Pc端选择接收数据到文件,sscom会自动保存数据到提示的文件中,一般保存目录为sscom工具安装目录。

4.2设备端执行测试脚本
1、设备端进入测试脚本文件夹

2、执行测试脚本,并根据提示输入串口号和波特率,脚本自动发送文件夹内txt文件到PC端

4.3、算接收文件MD5码
1、修改PC端接收数据文件格式为txt类型
2、打开PC机cmd命令工具,计算设备端发送文件MD5值,并与设备端显示MD5值比较,数值一致为测试通过

5、数据接收测试
5.1设置串口接收
1、执行测试脚本ttysTest.sh 数据发送完成后,按任意键退出,即进入串口数据接收模式

2、PC端sscom选择文件后,选择HEX发送,点击发送文件

3、sscom会显示数据发送进度

4、根据sscom显示,发送完成后,设备端按Ctrl+c退出接收

5.2 串口接收MD5值校验
1、PC端计算发送文件MD5值

2、设备端执行 sh ReceiveMD5Check.sh,根据提示输入发送数据MD5值

3、脚本计算并对比接收文件MD5值与输入MD5值是否一致,数值一样为测试通过
6 附件附件1 串口数据收发测试脚本
#!/bin/bash
检查参数个数
read -p "请输入串口号/dev/ttyS*:" port
serial_port="/dev/ttyS$port"
使用stty检查串口设备是否存在
if [[ -c $serial_port ]]; then
echo "串口设备存在:$serial_port"
else
echo "串口设备不存在:$serial_port"
exit 1
fi
#echo "串口号为:$serial_port"
read -p "请输入串口波特率:" serial_baudrate
echo "串口波特率为:$serial_baudrate"
stty -F serial_port serial_baudrate
echo "开始发送数据..."
cat devSend.txt > $serial_port
等待用户输入来结束脚本
read -p "按任意键退出发送" -n 1 -s
直接获取cat的PID
#kill $!
echo -e "\003"
echo "发送完成"
md5Send=$(md5sum devSend.txt)
echo "发送文件MD5值:$md5Send"
echo -e "请比对文件MD5值,若MD5值一致,串口发送测试通过"
#cat指令还在运行强行结束
#if [ -n "$!" ]; then
kill $!
#fi
stty -F $serial_port -icanon min 1 time 0
#stty -F $serial_port -close
#进入串口数据接收
stty -F serial_port serial_baudrate
echo "开始接收串口数据,按Ctrl+c退出串口接收"
cat $serial_port > pcSend.txt
exit
附件2 MD5码校验测试脚本
#!/bin/bash
read -p "输入PC端发送文件MD5值:" pcMD5
md5Recive=(md5sum pcSend.txt \| awk '{print 1}')
echo -e "\n接收文件MD5值:$md5Recive"
if test pcMD5 = md5Recive
then
echo "接收文件MD5值一致"
echo "串口接收测试通过"
else
echo "接收文件MD5值不一致"
echo "串口接收测试失败"
fi
exit