如何进行shell脚本正确性测试

博客已迁移,新地址




----------------------------------------------------------------------------------------

在实际工作中,需要对shell脚本进行正确性测试。

如何用最快最有效的方式进行测试?


很多开发的习惯是,二话不说,写完/拿到,就跑一把,看看输入,输出,想要的操作是否完成,也就过了。

其实这是十分不严谨的,若是未经过QA,风险还是相当大的。


以下即shell脚本测试流程,仅供参考

1.代码走读:

    写完,或者拿到一个shell脚本,不必急于运行,虽然实践是检验整理的唯一标准,但是,在读代码这个过程中,可以规避很多低级的bug.

    读什么?

    A.代码逻辑,这个脚本用来做什么,主要分为多少步,分别做了什么事情?

        用于检查是否有遗漏逻辑,或有悖于需求。

    B.具体语法,变量,判断语句

        语法方面的东西,变量是否定义,判断语句逻辑是否正确,是否考虑各种异常,错误是否退出,返回正确状态值等。


2.语法检测:

    shell的语法还是相当让人无语的,很多很容易疏忽遗漏的地方

    命令格式: sh -n ***.sh 

    

    若是没有异常输出,证明脚本没有明显的语法问题。


3.运行跟踪:

   实践是检验整理的唯一标准,跑一把。

   不过,可不是直接运行然后去看最终结果,这样会遗漏掉很多中间过程。

   命令格式: sh -vx ***.sh

   得到效果如下:


我们可以看到

每行代码原始命令(无+的):[这是-v的效果]

代码执行时的情况(带+),包括运算结果,逻辑判断结果,变量赋值等等[-x的效果]

而我们所要关注的就是这些信息,主要是变量值和逻辑判断结果。


4.覆盖分支:

   直接跑,只能覆盖到

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值