具有数据驱动开发功能的最佳Java BDD框架?

时间:2011-05-16 11:34:31

标签: java automated-tests bdd jbehave easyb

我正在寻找Java 行为驱动开发测试框架,它与数据驱动开发(参数化值)很好地集成。我开始使用 easyb ,但它似乎并不是真正的数据驱动友好。 查看文档 JBehave 看起来是一个更加整合的框架,任何人都使用带有Selenium(Maven项目)的软管框架,其中包含CSV或JSON文件作为供稿。

干杯,

1 个答案:

答案 0 :(得分:2)

您可以将JGiven与JUnit和JUnit-DataProvider一起使用。然后你可以写下这样的测试:

@Test
@DataProvider( {
    "0, 0, Error: No coffees left",
    "0, 1, Error: No coffees left",
    "1, 0, Error: Insufficient money",
    "0, 5, Error: No coffees left",
    "1, 5, Enjoy your coffee!",
} )
public void correct_messages_are_shown( int coffeesLeft, int numberOfCoins, String message ) {
    given().a_coffee_machine()
        .and().there_are_$_coffees_left_in_the_machine( coffeesLeft );

    when().I_insert_$_one_euro_coins( numberOfCoins )
        .and().I_press_the_coffee_button();

    then().the_message_$_is_shown( message );
}

完整示例可在GitHub

上找到

免责声明:我是JGiven的作者