Compton配置完成后的效果测试步骤
一 快速验证配置是否生效
- 查看进程与版本:运行ps -e | grep compton确认已在运行;执行compton --version检查可执行程序可用。若未运行,可手动启动:compton &。
- 前台试运行并开启调试日志:执行compton --config ~/.config/compton.conf --verbose,观察终端输出是否有报错或警告。
- 检查配置文件路径与内容:常见位置为**~/.config/compton.conf或/etc/xdg/compton.conf**;确认关键项如backend(如glx)、shadow、vsync、opacity等是否符合预期。
- 重启使配置生效:若以服务方式运行,使用sudo systemctl restart compton(或compton.service)重启;否则先结束旧进程再启动新进程。
- 观察视觉效果:打开多个应用窗口,检查是否存在预期的阴影、透明度、抗锯齿等变化。
二 功能与视觉回归测试
- 抗锯齿与渲染:在配置中启用如glx-use-gl = true、glx-aa = “msaa”、glx-aa-depth = 4、glx-aa-samples = 4后,打开浏览器、图片查看器等应用,观察边缘是否更平滑。
- 阴影与排除规则:设置shadow = true、shadow-opacity = 0.5、shadow-radius = 4,并用规则如**shadow-exclude = “[class=‘.*Firefox’]”**验证特定应用是否无阴影。
- 帧率限制:设置fps-limit = 60后,在窗口快速拖拽、动画切换时感受是否更顺滑且资源占用更可控。
- 多场景覆盖:交叉测试终端、浏览器、视频播放器、办公套件等常见应用,确认无异常透明、残影、撕裂或闪烁。
三 性能与资源占用测试
- 系统监控:使用htop/top观察CPU与内存占用;必要时配合glances做多指标概览。
- GPU监控:使用nvidia-smi(NVIDIA)查看GPU使用率与温度,确认合成未造成异常占用。
- 基准测试:运行glxgears或glxgears-ng评估OpenGL渲染帧率;使用x11perf做更细的X11合成与绘制基准。
- 应用级压力:同时打开多个应用窗口、播放高清视频、运行游戏或图形密集型应用,检查是否出现卡顿、撕裂或明显掉帧。
四 日志排查与问题定位
- 前台调试:使用compton --config ~/.config/compton.conf --verbose获取详细运行信息,快速定位配置项问题。
- 系统日志:通过journalctl -xe或查看**/var/log/Xorg.0.log获取与X11/合成**相关的错误线索。
- 环境变量:确认DISPLAY与XAUTHORITY等变量正确,避免因会话/权限导致无法连接到显示服务器。
- 逐项回退:若新增或调整某选项后出现异常,先注释/恢复该项,逐步缩小问题范围。
五 一键测试脚本示例
- 保存为test-compton.sh,赋予可执行权限后运行:
#!/usr/bin/env bash
set -e
CFG="$HOME/.config/compton.conf"
LOG="/tmp/compton-test.log"
echo "=== $(date) ===" | tee -a "$LOG"
if pgrep -x compton >/dev/null; then
echo "[INFO] Compton is running (pid: $(pgrep -x compton))" | tee -a "$LOG"
else
echo "[WARN] Compton not running, starting in foreground with debug..." | tee -a "$LOG"
compton --config "$CFG" --verbose 2>&1 | tee -a "$LOG"
exit 0
fi
echo "[INFO] Running compton in foreground with debug (Ctrl+C to stop)..." | tee -a "$LOG"
timeout 30 compton --config "$CFG" --verbose 2>&1 | tee -a "$LOG" || true
echo "[INFO] CPU/Mem snapshot:" | tee -a "$LOG"
top -b -n1 | head -n 12 | tee -a "$LOG"
if command -v nvidia-smi >/dev/null 2>&1; then
echo "[INFO] NVIDIA GPU snapshot:" | tee -a "$LOG"
nvidia-smi --query-gpu=utilization.gpu,temperature.gpu --format=csv,noheader,nounits | tee -a "$LOG"
fi
echo "[INFO] Done. Log: $LOG"
- 使用提示:
- 观察日志中是否出现error/warning;
- 若开启了fps-limit,在测试期间留意帧率是否接近设定值;
- 对比开启/关闭某些特效(如阴影、抗锯齿)时的CPU/GPU占用与流畅度差异。