在Fitnesse测试中将Fit fixture转换为Slim

时间:2017-02-17 18:58:52

标签: fitnesse fitnesse-slim

寻找将Fitnes的Fit夹具转换为Slim的解决方案。 我从http://fit.c2.com/wiki.cgi?CommandLineFixture获得了Command Line Fit夹具。 由于我所有的Fitnesse测试系统都在Slim上运行,我需要使用CommandLineFixture作为Slim来从我的测试中执行bash脚本。 任何其他解决方法对我都有用。

我正在尝试从Fitnesse测试执行脚本,此脚本会在运行我的Fitnesse服务器的服务器中的文件中写入一些文本。但我所观察到的是提供了夹具(https://github.com/fhoeben/hsac-fitnesse-fixtures/blob/master/src/main/java/nl/hsac/fitnesse/fixture/slim/ExecuteProgramTest.java)的打开文件,而不是在其中写入任何文本。所以只是想检查我们是否对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|!--! |

执行上面的测试没有得到任何响应。并给出结果为:测试页数:0右,0错,1忽略,0异常断言:0右,0错,0忽略,0异常(0.456秒)

1 个答案:

答案 0 :(得分:0)

我有一个辅助方法来启动我my fixture library中的程序,但是我今天开始使用fixture。 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>
}}}|