Shell 作为一门最常见的脚本语言,是测试工程师日常工作的重度依赖工具。相对 Python、Ruby 等其他脚本语言,Shell 就像一把趁手的军用匕首,轻量敏捷,是深入分析待测系统的利器,也是自动化能力的重要基础。呃...,也是测试工程师提高工作效率,节约时间,能提前下班约妹子逛街,陪老婆看娃的必要手段。
比如,在测试过程中需要 Debug 问题时,经常会遇到返回的 log 数据冗长复杂,人工查找有效数据效率低下的问题。如何从繁琐的日志里,快速的筛选出有效数据并将这些数据可视化,高效的对数据进行分析,精准定位 Bug 产生的原因,是考核测试工程师工作能效的一项重要指标。
测试小白通常是人工手动加肉眼筛查,忙到天昏地暗,即便搞到黑眼圈又加重了一个色号,也不见得能搞定有效数据过滤,更不用说进行问题分析;而测试老司机只需要对着屏幕抿一口枸杞茶,然后翘起兰花指飞速敲出几行脚本代码,并潇洒响亮的按一下回车,短短几分钟快则数秒钟,就能轻松定位问题所在。
同样是测试 ,为何大家的差距如此之大?
测试小白不知道的是,测试老司机们背地里都在潜心修炼《葵花宝典》,哦不,是 Shell 脚本编程领域著名的《Linux 三剑客宝典》:grep、awk 和 sed。
WTF?一看名字就知道是那种不明觉厉,贱兮兮又贼强大的工具。
嗯,没错,他们就是测试工程师老少皆宜、童叟无欺、家庭和睦、居家旅行必备之 —— Linux 文本处理工具。