MST
星途 面试题库

面试题:Bash Shell脚本测试框架基础使用

假设你使用一个常见的Bash Shell脚本测试框架(如shunit2),请编写一个简单的Bash脚本,包含两个函数:一个函数用于计算两个数的和,另一个函数用于测试这个求和函数。要求使用shunit2框架来编写测试用例。
13.9万 热度难度
编程语言Bash

知识考点

AI 面试

面试题答案

一键面试
  1. 首先创建一个sum.sh文件,内容如下:
#!/bin/bash

# 计算两个数之和的函数
sum() {
    local num1=$1
    local num2=$2
    echo $(($num1 + $num2))
}
  1. 然后创建测试文件sum_test.sh,内容如下:
#!/bin/bash
# 加载shunit2框架,假设shunit2在当前目录下
. shunit2

# 测试sum函数的测试用例函数
testSum() {
    local result=$(sum 2 3)
    assertEquals "Sum should be 5" 5 "$result"
}

# 运行测试
if [ "$0" = "$BASH_SOURCE" ]; then
    SHUNIT_PARENT=$0
    shunit2
fi

在上述代码中:

  • sum.sh定义了一个sum函数,用于计算两个数的和。
  • sum_test.sh使用shunit2框架来测试sum函数,testSum函数中调用sum函数并使用assertEquals断言来验证结果是否正确。最后通过shunit2运行测试。运行测试前需确保shunit2脚本在指定路径下。