shell script 自动化测试框架 - shUnit2

本文详细介绍了shUnit2的开发背景、使用方法、内部处理流程以及如何生成测试代码,旨在帮助开发者掌握自动化测试的基本操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

shUnit2的开发背景

shUnit2是基于log4sh SHELL自动化测试对应而开发的, 使用方式和JUnit类似.

准备

1. 下载shUnit2

wget -P ~/download http://shunit2.googlecode.com/files/shunit2-2.1.6.tgz

2. 解压

tar -xzvf ~/download/shunit2-2.1.6.tgz

3. 执行测试用例

~/download/shunit2-2.1.6/examples/equality_test.sh
测试执行的内部处理

shUnit2的内部处理流程如下所示.

  • shunit2执行时会列举出所以有test开头的测试函数
  • oneTimeSetUp函数被定义的情况下, 就执行该函数
  • 被列举的各个测试函数按如下方式执行:
    • setUp函数被定义的情况下, 就执行该函数
    • 执行测试函数
    • tearDown函数被定义的情况下, 就执行该函数
  • oneTimeTearDown函数被定义的情况下, 就执行该函数
. "$SHUNIT2_HOME"/src/shell/shunit2
生成测试代码

例:

#!/bin/sh
# file: test/my_function_test.sh

# 读取测试对象
. ../src/my_function.sh

oneTimeSetUp() {
:
}
oneTimeTearDown() {
:
}
setUp() {
:
}
tearDown() {
:
}

# 测试用例
testMyFunction() {
  assertTrue "[ `myFunction 2` -eq 4 ]"
}

. "$SHUNIT2_HOME"/src/shunit2
#!/bin/sh
# file: src/my_function.sh

myFunction() {
  echo `expr $1 \* $1`
}
 
原文参考: http://d.hatena.ne.jp/oknknic/20110823/1314113501
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值