FItNesse:将 Fit 夹具转换为 Slim

FItNesse: Convert Fit fixture to Slim

正在寻找将 FitNesse 测试的 Fit fixture 转换为 Slim 的解决方案。

我得到了命令行 Fit fixture

因为我所有的 Fitnesse 测试系统都是 运行 在 Slim 上,所以我需要 CommandLineFixture 作为 Slim 来执行我测试中的 bash 脚本。

任何其他解决此问题的方法都适用于我。

我正在尝试从 FitNesse 测试执行一个脚本,该脚本在我的 Fitnesse 服务器所在的服务器中的文件中写入一些文本 运行。

但是我观察到 provided fixture 它的打开文件并且没有向其中写入任何文本。

所以只是想检查一下 Fitnesse 是否有任何限制来执行写入文件的脚本。

此外,我已将所有 rwx 权限授予文本文件

下面是我修改后的脚本:

!define TEST_SYSTEM {slim} 
!path ../fixtures/*.jar  
|Import                                            |  
| nl.hsac.fitnesse.fixture.slim.ExecuteProgramTest | 
|script                                            | 
|set    |-c            |as argument|0              |  
|set    |ls -l /       |as argument|1              |  
|execute|/bin/bash                                 |  
|check  |exit code     |0                          |  
|show   |standard out                              |  
|check  |standard error|!--!                       |

执行上述测试未获取任何响应,结果为:

Test Pages: 0 right, 0 wrong, 1 ignored, 0 exceptions

Assertions: 0 right, 0 wrong, 0 ignored, 0 exceptions

(0.456 seconds)

我有一个辅助方法可以在我的 my fixture library already, but I started work on fixture today. Would the execute program test 装置中启动一个程序,对你有用吗?

用法示例:

我们可以运行一个带有一些参数的程序,检查它的退出代码并显示它的输出。

|script |execute program test        |
|set    |-c            |as argument|0|
|set    |ls -l /       |as argument|1|
|execute|/bin/bash                   |
|check  |exit code     |0            |
|show   |standard out                |
|check  |standard error|!--!         |

程序执行的默认超时时间是一分钟,但我们可以设置自定义超时时间。此外,我们可以控制调用它的目录,使用列表设置所有参数并获取其输出 'unformatted'.

|script               |execute program test           |
|check                |timeout           |60000       |
|set timeout of       |100               |milliseconds|
|set working directory|/                              |
|set                  |-c, ls -l         |as arguments|
|execute              |/bin/bash                      |
|check                |exit code         |0           |
|show                 |raw standard out               |
|check                |raw standard error|!--!        |

超时时间也可以以秒为单位设置,并传递环境变量(并对进程的输出进行转义以确保其正确显示)。

|script        |execute program test           |
|set timeout of|1              |seconds        |
|set value     |Hi <there>     |for        |BLA|
|set           |-c             |as argument|0  |
|set           |!-echo ${BLA}-!|as argument|1  |
|execute       |/bin/bash                      |
|check         |exit code      |0              |
|check         |raw standard out               |!-Hi <there>
-!|
|check|standard out|{{{Hi <there>
}}}|