cost 102 ms
单元测试bash脚本函数,它删除超过一定天数的文件 - unit test bash script function which deletes files older than certain number of days

我在 bash/shell 脚本方面没有太多经验,最近才开始使用 Bats 框架或库编写一些带有单元测试的 bash 脚本。 目前正在编写一个脚本,该脚本需要删除超过一定天数的文件。 下面是函数。 是否可以对上述功能进行单元测试,因为它具有复杂的命令? 如果不可能,我们可以用其他方式重写上述函数 ...

Bash,变量的行包含substring? - Bash, lines of a variable contain substring?

在尝试编写一个可靠的 bash 方法来检测由多行文本组成的变量是否包含 substring(可能包含空格)时,我遇到了一些困难。 编写了三个函数,我使用BATS框架为它们编写了一些测试。 它们失败的功能和伴随的测试包括在下面。 方法一 这在测试中失败: 所以第一种方法不会捕获所有子字符串。 方法二 ...

如何确保文件系统已准备好在测试脚本中卸载? - How can I make sure a filesystem is ready for unmounting in a test script?

我正在使用蝙蝠来测试一些 bash 脚本。 在其中一项测试中,我需要挂载生成的 iso 磁盘映像并对其内容进行断言。 当我尝试在测试后立即卸载磁盘映像时,我会收到Device or resource busy错误,除非我在卸载操作之前插入睡眠时间。 脚本如下所示: 这在某种程度上可行,但我对任意睡 ...

如何在 BATS 测试中激活 Bash function 中的 ssh 帐户? - How to activate an ssh-account in Bash function in BATS test?

赏金将在 5 天后到期。 此问题的答案有资格获得+100声望赏金。 at想引起更多的关注这个问题。 语境作为使用 BATS 测试的 Bash 脚本的一部分,我注意到当我运行激活 ssh 帐户的 function 时,我的测试并未终止。 代码以下 function 假定 /home/<use ...

BATS assert_failure 测试无法识别出口 1? - BATS assert_failure test not recognising exit 1?

在尝试测试一种检查 GitLab 服务器是否正在运行 5 秒的方法时,我在检测错误消息时遇到了一些困难。 Function 检查 GitLab 服务器状态 测试代码 预期行为我希望测试通过,因为到达了exit 1 ,我认为它会引发失败。 观察到的行为当包含出口1时,测试失败,测试的output为 ...

在单独的 shell 中测试 gitlab-runner 运行命令? - Testing gitlab-runner run command in a separate shell?

语境在测试自动安装和运行 GitLab 和 GitLab 运行器的安装脚本的功能时,我在后台运行 GitLab 运行器时遇到了一些困难,无法继续进行测试。 (我的意图是简单地在后台运行运行器,然后运行一些测试来验证服务是否按预期运行)。 但是,当我的测试执行sudo gitlab-runner ...

如何在 shell 函数中创建输出以使用 bat 进行单元测试? - How to create output in a shell function for unit testing with bats?

在设置了可以在某个目录中测试 shell 脚本的 bats 测试框架后,我尝试扩展passive_function.sh测试以测试另一个 shell 文件中编写的 shell 函数。 测试设置 我创建了一个模板存储库来执行 shell 测试。 它在文件夹/test/包含一个名为test_other ...

BATS - 如何强制检查程序是否存在失败? - BATS - How to force a check for existence of a program to fail?

我有一个函数可以检查文件是否存在以及它是否可执行。 我有一个需要dos2unix的脚本。 由于dos2unix安装在/usr/bin我不能只从PATH删除已安装的路径。 我也不想(也不能)暂时重命名实际的 dos2unix 程序。 我尝试在 BASH_CMDS 中设置一个条目,它可以从命令 ...

2020-10-06 19:19:47   1   59    bats-core  
通过 bats 测试创建特定目录及其内容 - Test creation of specific directory and its contents via bats

我正在调用我创建的交互式 cli 工具(使用go但这不在问题的范围内)。 我正在使用BATS和expect的组合对其进行集成测试。 下面是具体的测试套件: 这一步的成功是创建一个具有预定义内容的特定目录。 因为我是BATS新手,所以我找不到一种方法来以某种方式断言该命令 将等于 等 ...

如何重用 bats 单元测试 - How to reuse bats unit tests

我期待在不同环境中重用代码进行 bats 单元测试。 我想知道是否可以在一个地方为两个文件提供通用的@test 代码。 我的第一个单元测试文件将在我的开发环境中运行: 我的第二个单元测试文件运行相同的测试,将在部署或生产环境中运行: 如您所见,测试代码是相同的,只需更改设置 function 上的$ ...

如何编写单元可测试的 bash shell 代码? - How to write unit testable bash shell code?

在OOP Universum于,有很多的信息,如何与DESGIN重构代码,使其单元测试友好。 但我想知道,如何将这些原则/实践(使模拟更容易等)应用/翻译到 shell 脚本,这显然是不同的编程。 我必须处理一个非常庞大的代码库; 许多可执行和不可执行的过程、大型函数、大型全局状态、许多环境变量, ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM