寻找将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秒)
答案 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>
}}}|