java - 如何将接口(interface)中测试的值传递给 Java 代码?

标签 java parameters fitnesse

我正在对几款游戏进行一些测试。大多数游戏都有相同的测试,只有一些值(我的java代码中的常量)不同。

在这种情况下,我决定重用该类并在 FitNesse 界面中为游戏创建单独的测试页面。问题是识别 Java 代码中正在测试的正确游戏,以便设置适当的值。

我考虑了几种方法,目前我在每个测试中创建了一个带有游戏名称(实际上是输入参数)的新列,并根据此参数的值在代码中设置了常量。

我想知道是否有一种方法可以以隐藏的方式将属性/变量从接口(interface)发送到Java代码,以便用户不需要将这些值放入表中。

最佳答案

您可以在测试页上放置隐藏部分:

!*****< This is HIDDEN, but is ACTIVE
|myspecialfixture|
|game|tictactoe|

******!

在此示例中,myspecialfixture 会将游戏名称保存在其他设备可以访问的位置,例如:

public class MySpecialFixture extends DoFixture {
    public static String currentGame;
    public void game(String gameName) { currentGame = gameName; }
}

public class SomeOtherFixture ... {
    ... if (MySpecialFixture.currentGame.equals( ... ) { }

}

关于java - 如何将接口(interface)中测试的值传递给 Java 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24562843/

相关文章:

java - 动态添加 Primefaces 组件

iphone - NSURL 添加参数到 fileURLWithPath 方法

swift - 如何在swift中从另一个函数访问函数参数

c++ - 将额外数据传递给函数

python - 使用 SLIM 使用 Python 编写 Fitnesse 测试

java - 如何在 Java 中获取 BufferedImage 透明部分的形状?

java - 等待 JUnit 测试用例中测试的代码生成的所有线程

java - addAll() 是否返回 false?

configuration - FitNesse 配置文件

testing - 如何在 FitNesse/Slim headless 中运行测试?