小牛丨软件测试学习小牛丨软件测试学习
首页
  • 业务测试面试题
  • 数据库测试面试题
  • Linux测试环境面试题
  • 网络协议测试面试题
  • 中间件测试面试题
  • Java测试开发面试题
  • Python测试开发面试题
  • Python自动化面试题
  • Java自动化面试题
  • 性能测试面试题
  • 手撕代码
  • HR面试题
  • 系列总入口
  • 业务测试理论
  • 数据库测试
  • Linux测试环境
  • 网络协议
  • 中间件测试
  • Python编程
  • Java编程
  • 自动化测试
  • 性能测试
  • AI测试
  • HR面试
  • AI测试学习路线
  • AI测试基础面试题
  • 大模型测试面试题
  • AI自动化测开面试题
  • AI Agent测试面试题
  • AI性能与稳定性测试面试题
  • AI应用安全测试面试题
  • 互联网大厂面试真题
  • 互联网中厂面试真题
  • 手机厂商面试真题
  • 通信厂商面试真题
  • 新能源汽车面试真题
  • 银行金融面试真题
  • 项目说明
  • 电商接口文档
  • 实战项目总入口
  • 测试简历编写指南
  • 20K level 简历打磨指南
  • 测试简历模板参考
  • 简历常见问题与避坑
  • 零基础入行专题路径
  • 初中级进阶高级专题路径
  • 零基础小白入行软件测试保姆级学习路线
  • 初中级测试进阶高级测试全路线
首页
  • 业务测试面试题
  • 数据库测试面试题
  • Linux测试环境面试题
  • 网络协议测试面试题
  • 中间件测试面试题
  • Java测试开发面试题
  • Python测试开发面试题
  • Python自动化面试题
  • Java自动化面试题
  • 性能测试面试题
  • 手撕代码
  • HR面试题
  • 系列总入口
  • 业务测试理论
  • 数据库测试
  • Linux测试环境
  • 网络协议
  • 中间件测试
  • Python编程
  • Java编程
  • 自动化测试
  • 性能测试
  • AI测试
  • HR面试
  • AI测试学习路线
  • AI测试基础面试题
  • 大模型测试面试题
  • AI自动化测开面试题
  • AI Agent测试面试题
  • AI性能与稳定性测试面试题
  • AI应用安全测试面试题
  • 互联网大厂面试真题
  • 互联网中厂面试真题
  • 手机厂商面试真题
  • 通信厂商面试真题
  • 新能源汽车面试真题
  • 银行金融面试真题
  • 项目说明
  • 电商接口文档
  • 实战项目总入口
  • 测试简历编写指南
  • 20K level 简历打磨指南
  • 测试简历模板参考
  • 简历常见问题与避坑
  • 零基础入行专题路径
  • 初中级进阶高级专题路径
  • 零基础小白入行软件测试保姆级学习路线
  • 初中级测试进阶高级测试全路线
  • Linux 测试环境精华文章

    • Linux 测试环境精华文章
    • 1. 测试面试常问 Linux 命令怎么准备
    • 2. 日志排查常用命令怎么用
    • 3. grep 查日志面试怎么讲
    • 4. Linux 进程和端口怎么排查
    • 5. 测试环境部署面试怎么讲
    • 6. Linux 文件权限怎么理解
    • 7. Docker 在测试环境中怎么用
    • 8. Docker 日志和容器问题怎么排查
    • 9. K8s 对测试工程师要掌握什么
    • 10. Linux 环境问题定位思路
⌕
🛒项目实战📦资料包🛠测试神器AIAI路线CV简历测评🧭入行测评🧪测开测评🎯训练营🏆案例❤赞赏我

1. 测试面试常问 Linux 命令怎么准备

测试工程师准备 Linux 命令,千万不要把方向学偏。面试官通常不是想招一个运维,也不是要求你能独立维护一套复杂生产集群,而是想判断你在测试环境里能不能完成最基本的问题定位:服务是不是启动了,端口有没有监听,日志里有没有异常,配置文件有没有改对,测试数据文件在哪里,自动化脚本为什么执行失败,部署后的接口为什么访问不了。

很多同学背了一堆命令,比如 ls、cd、pwd、cat、grep、ps、top,但面试时一问“接口 500 你怎么查”“服务访问不了你怎么定位”“日志太大你怎么看最近 100 行”,就答得很散。Linux 面试的重点不是命令数量,而是命令背后的测试场景。你要把命令和实际问题绑定起来讲,才能让面试官相信你真的用过。

一、测试为什么必须会 Linux

企业项目大多数服务都部署在 Linux 环境。即使你平时主要做功能测试、接口测试或自动化测试,也经常需要登录测试服务器看日志、查服务、确认端口、修改配置、上传文件、执行脚本。如果你完全不会 Linux,每次遇到环境问题都只能等开发或运维,测试效率会很低。

测试常见 Linux 使用场景包括:

  • 接口报 500,需要查看服务日志;
  • 页面访问失败,需要确认服务是否启动;
  • 接口连接拒绝,需要检查端口是否监听;
  • 自动化脚本失败,需要查看执行目录和依赖文件;
  • 测试环境部署后,需要检查配置文件是否生效;
  • 上传测试数据文件,需要确认路径和权限;
  • 服务响应慢,需要初步观察 CPU、内存和磁盘情况。

所以测试学 Linux 的目标很明确:会查、会看、会定位、会表达。

二、目录和文件命令怎么准备

基础命令不用死背,但要能说出使用场景。

pwd 用来确认当前路径。很多脚本执行失败是因为目录不对,先看当前目录很重要。

ls -l 用来看文件列表、权限、大小和修改时间。比如你上传了配置文件,但服务没生效,可以先看文件是否真的上传到目标目录。

cd 用来切换目录。面试里不用讲太多,但要知道相对路径和绝对路径。

cp、mv、rm 分别用于复制、移动、删除。测试环境操作删除命令要谨慎,尤其是 rm -rf,面试时可以主动说生产环境不会随便删除文件,测试环境也要确认路径。

mkdir 用来创建目录,touch 可以创建空文件或更新时间。

面试可以这样讲:

我平时会用 pwd 确认当前目录,用 ls -l 查看文件权限、大小和修改时间,用 cd 切换到日志或配置目录。如果需要备份配置,会先用 cp 复制一份,再修改配置,避免改错后无法恢复。

三、查看文件和日志命令

测试最常用的是查看日志。常见命令包括 cat、less、tail、head、grep。

cat 适合看小文件,比如配置文件、启动脚本、简单日志。大文件不建议直接 cat,容易刷屏。

less 适合查看大文件,可以上下翻页,也可以搜索关键字。

tail -f 是测试查实时日志最常用命令。比如你调用接口前先打开日志:

tail -f application.log

然后在页面或 Postman 里复现问题,看日志是否出现异常。

tail -n 100 application.log 可以查看最近 100 行日志。接口刚报错时,这个命令很实用。

grep 用来搜索关键字,比如:

grep "ERROR" application.log
grep "orderNo=NO10001" application.log
grep -n "Exception" application.log

测试定位时,不要只说“我看日志”,要说你看什么关键字:订单号、用户 ID、接口路径、错误码、异常堆栈、时间点。

四、进程和端口命令

服务访问不了时,第一步要确认服务是否启动,第二步确认端口是否监听。

ps -ef | grep java 可以查看 Java 服务进程。比如后端服务是 Spring Boot,就可以查是否有对应进程。

top 可以查看 CPU、内存占用,初步判断是否服务资源异常。

端口查看常用 netstat 或 ss。例如:

ss -lntp | grep 8080
netstat -lntp | grep 8080

如果端口没有监听,说明服务可能没启动或启动失败;如果端口监听了但接口访问不了,再看防火墙、网关、路径、服务日志或应用异常。

面试回答可以这样说:

如果测试环境接口访问不了,我会先确认域名或 IP 是否正确,再登录服务器用 ps 看服务进程是否存在,用 ss 或 netstat 看端口是否监听。如果进程不存在,就看启动日志;如果端口监听但请求失败,再结合应用日志和接口路径继续排查。

五、权限命令怎么理解

Linux 权限是测试环境里很常见的问题。比如脚本无法执行、日志无法写入、上传文件后服务读取失败,都可能和权限有关。

ls -l 可以看到权限,比如:

-rwxr-xr-x 1 app app 1024 run.sh

r 表示读,w 表示写,x 表示执行。脚本如果没有执行权限,可能需要:

chmod +x run.sh

但测试人员不要随便给 777 权限。面试时可以说:

我知道 chmod 777 虽然简单,但不安全。测试环境如果遇到权限问题,我会先确认文件所属用户和实际需要的权限,再按最小权限原则处理,必要时让运维或开发确认。

六、磁盘和资源命令

测试环境偶尔会出现磁盘满、日志写不进去、服务启动失败。

df -h 查看磁盘分区使用情况。

du -sh * 查看当前目录下各文件或目录大小。

free -m 查看内存。

top 查看 CPU 和内存占用。

如果接口突然大量失败,并且日志停止写入,可以检查磁盘是否满。如果压测时接口变慢,可以先看 CPU、内存是否异常,但最终还要结合应用监控、数据库、日志分析。

七、测试场景案例

场景 1:接口返回 500

处理思路:

  1. 记录接口请求时间、请求参数和用户账号;
  2. 登录服务器查看应用日志;
  3. 用 tail -n 200 看最近日志;
  4. 用 grep 搜索订单号、用户 ID 或异常关键字;
  5. 找到异常堆栈后截图或复制关键日志;
  6. 结合接口响应和日志提交 Bug。

场景 2:测试环境访问不了

处理思路:

  1. 确认 URL、域名、端口是否正确;
  2. 用 ps 看服务是否启动;
  3. 用 ss 或 netstat 看端口是否监听;
  4. 查看启动日志是否报错;
  5. 如果服务正常,再排查网关、配置、网络或防火墙。

场景 3:自动化脚本执行失败

处理思路:

  1. 用 pwd 确认执行目录;
  2. 用 ls -l 确认文件是否存在;
  3. 查看配置文件是否正确;
  4. 查看脚本执行日志;
  5. 确认权限和依赖是否满足。

八、面试回答模板

如果面试官问“测试常用 Linux 命令有哪些”,不要流水账式背命令,可以这样答:

我在测试中使用 Linux 主要是为了查日志、看服务状态、排查端口和处理测试文件。比如接口报 500 时,我会用 tail -f 或 tail -n 查看实时日志和最近日志,用 grep 根据订单号、用户 ID、ERROR、Exception 等关键字定位异常。服务访问不了时,我会用 ps -ef 查看进程,用 ss 或 netstat 查看端口是否监听。遇到脚本执行失败,会用 pwd、ls -l、chmod 检查路径、文件和权限。如果环境响应慢,还会用 top、free、df -h 做初步判断。

这个回答比单纯列命令更有项目感。

九、常见追问

追问:日志很大怎么查?

可以用 tail -n 看最近日志,用 grep 搜索关键字,用 less 分页查看。不要直接 cat 大文件。

追问:服务访问不了怎么排查?

先确认地址和端口,再看进程是否存在、端口是否监听、启动日志是否报错,最后排查网络、网关或配置。

追问:权限不足怎么办?

先用 ls -l 查看权限和所属用户,再根据需要调整权限,不建议无脑 chmod 777。

十、练习清单

  1. 用 pwd、ls -l 查看目录和文件;
  2. 用 tail -f 实时查看日志;
  3. 用 grep ERROR 搜索异常;
  4. 用 ps -ef 查看服务进程;
  5. 用 ss -lntp 查看端口;
  6. 用 df -h 查看磁盘;
  7. 用 free -m 查看内存;
  8. 用 chmod +x 给脚本执行权限;
  9. 模拟接口 500 并整理日志证据;
  10. 准备一段 Linux 命令面试回答。

Linux 命令准备不在多,而在会用。你要把命令讲到测试场景里,把场景讲到问题定位里,这样面试才不会显得空。

配套刷题:

  • Linux测试环境面试题
相关推荐

下一步可以看这些

面试通关软件测试面试通关系列精华文章

把面试题、项目、简历和训练营串成一套求职准备路径。

入行路线零基础入行软件测试专题路径

从测评、学习路线、项目、简历到面试,按顺序入行。

进阶路线初中级测试进阶高级专题路径

接口自动化、性能测试、CI/CD、复杂业务质量保障进阶路线。

AI 方向AI 测试学习路线专题页

大模型评测、RAG 测试、Agent 测试和 AI 自动化路线。

求职结果Offer 案例 / 学员案例展示

看看真实学员 Offer 案例,判断目标和学习投入是否匹配。

资料 / 交流群添加小牛微信

备注:资料、简历、AI 或找工作,领取对应资料或进交流群。

添加小牛微信
Prev
Linux 测试环境精华文章
Next
2. 日志排查常用命令怎么用