Testing 从Concordion测试规范中初始化对象

Testing 从Concordion测试规范中初始化对象,testing,concordion,Testing,Concordion,我想使用Concordion为一个简单的bankAccount pgm编写测试,该pgm作为cucumber教程的一部分提供。我在解决如何从concordion测试规范初始化对象时遇到困难 我在fixture中创建了一个名为createAccount的方法,该方法将initialBalance和帐号作为参数 我从测试规范中称之为 <b concordion:execute="createAccount(#accountNum,#initBalance)"> 如果您需要任何帮助,我

我想使用Concordion为一个简单的bankAccount pgm编写测试,该pgm作为cucumber教程的一部分提供。我在解决如何从concordion测试规范初始化对象时遇到困难

我在fixture中创建了一个名为createAccount的方法,该方法将initialBalance和帐号作为参数

我从测试规范中称之为

<b concordion:execute="createAccount(#accountNum,#initBalance)">


如果您需要任何帮助,我们将不胜感激。

当您想从协和规范中调用初始化方法时,您不需要@Before注释。JUnit使用它在执行实际测试方法之前调用方法。但是Concordion并没有运行单一的测试方法,而是基于规范文档中的工具调用fixture类中的方法


请尝试删除@Before注释,然后重试。

非常感谢。我已经对我的代码做了这个更改,现在它开始工作了。
@RunWith(ConcordionRunner.class)
public class CashMachineTest {

    private Account newAccount;
    int initBalance = 123;
    int accountNum = 1;

    @Before
    public void createAccount(int accountNum, int initBalance) throws     Throwable{
        newAccount = new Account(accountNum, initBalance);
    }

    public int getBalance(){
        return newAccount.getBalance();
    }

    public void deposit(int amount){
        newAccount.deposit(amount);
    }