gpt4 book ai didi

spring-boot - Spring Boot 在 cucumber 步骤上加载 SQL

转载 作者:行者123 更新时间:2023-12-05 07:44:36 28 4
gpt4 key购买 nike

我使用 SpringBoot、Cucumber 和 RestAssured 进行集成/功能测试,问题是 @Sql 不适用于 @Given 注释。有没有办法在步骤之间执行SQL?

这是我的 MainDef

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = Application.class, loader = SpringBootContextLoader.class)
@WebAppConfiguration
public abstract class MainDef {}

步骤如下:

public class UserSteps extends MainDef {

@Given("^delete_users$")
@Sql("classpath:config/usersql/deleteUser.sql")
public void delete_users() throws Throwable {

}
...

这是运行者

@RunWith(Cucumber.class)
@CucumberOptions(format = "pretty", features = "src/test/resources/feature/", tags = "~@ignore",glue = {"com.user.definition"})
public class CucumberTest { //NOSONAR
}

最佳答案

我最终明确地执行了脚本:

public class UserSteps extends MainDef {
@Autowired
private JdbcTemplate jdbcTemplate;

@Given("^delete_users$")
public void delete_users() throws Throwable {
ScriptUtils.executeSqlScript(
jdbcTemplate.getDataSource().getConnection(),
new ClassPathResource("config/usersql/deleteUser.sql")
);
}
}

关于spring-boot - Spring Boot 在 cucumber 步骤上加载 SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42711390/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com