优秀的编程知识分享平台

网站首页 > 技术文章 正文

软件测试面试题04-Linux常用命令(软件测试linux笔试题)

nanyue 2024-08-02 17:37:43 技术文章 5 ℃

linux 常用命令,这个是软件测试面试必问的问题,主要是因为目前大多数互联网项目都部署在linux服务器,如测试环境,部署的本地的服务器上,从开发提交完代码,测试同学就得知道如何将最新的代码部署到测试环境(jenkins一键部署,测试同学起码知道服务部署在哪,还有jenkins里的脚本也得懂),还要去验证服务是否真的部署好了,方法1:从前端的APP 或web端去入手,点击业务功能,查看是否有报错情况,或是使用自动化脚本跑一遍全业务,根据结果验证环境是否部署好了 。 方法2:在linux服务器上查看服务的启动日志等,查看是否有报错。除了环境问题之外,测试同学还需要将项目报错的日志贴在bug里边,这就要求测试同学能精准地定位到问题,以及报错日志。

所以测试人员必须会一些常用的命令,如下:

案例一:

脚本的目的:就是 传入不同的项目名称,就可以查看到不同项目当天的日志。

以下代码执行方式

  脚本名称:cat_catalina_log.sh

  脚本运行方式:sh cat_catalina_log.sh tomcat-8108

脚本中的$1就是传入的参数:tomcat-8108

#!/bin/bash
#set -x
ls_date=`date +%Y-%m-%d`
tail -500f /home/tomcat/$1/logs/catalina.${ls_date}.out


案例二:

脚本的目的:想用脚本重启tomcat项目,通过传参的方式(参数:项目的名称) 。

以下代码执行方式

  脚本名称:restartApp.sh

  脚本运行方式:sh restartApp.sh tomcat-8107


set -x 详细的日志输出

grep -v 是反向查找的意思,比如 grep -v restartApp 就是查找不含有 restartApp 字段的行

#!/bin/bash
set -x
#ps_result=`ps -ef | grep tomcat| grep $1`
#echo "${ps_result}"
 
echo -e "\n\n\n"
pids=`ps -ef| grep tomcat |grep $1 |grep -v 'grep'|grep -v 'restartApp.sh'|awk '{print $2}'`
count=0
pid_num=0
for pid in ${pids}
do
    pid_num=${pid}
    echo "pid_num:${pid_num}"
    #count=`expr ${count}+1`
    count=$(($count+1))
    echo  "count: ${count}"
done
 
if [[ $count -gt 1 ]]
then
    echo  "一个项目有两个进程 异常"
else
    kill -9 ${pids}
    echo "Kill ${pids}  Success!"
    #重启
    echo  "重启中。。。。。。。"
    sh /home/lifesea/$1/bin/startup.sh
fi
echo -e "\n\n\n"<br>


测试同学可以根据实际情况,将频繁使用的命令,让其自动化跑起来,稍微解放一下自己的双手。

Tags:

最近发表
标签列表