java 是否可以在交易中进行空手道测试?

jvidinwx  于 2023-08-01  发布在  Java
关注(0)|答案(1)|浏览(101)

问:
在java项目中,我可以编写一个涉及数据库的集成测试:
1.清除表中当前可用的所有数据。
1.上传新的测试数据。在他们身上做个测试。
1.回滚。所有这些都是通过Java @Transactional实现的。
我可以在空手道中做类似的事情(交易)吗?
我的空手道算法是:
1.从karate将测试数据插入数据库。
1.调用处理数据的API java方法。问题:表中已有干扰测试的数据。你不能为了考试就永远删除它们。

oymdgrw7

oymdgrw71#

你可以将任何Java代码集成到空手道中,所以如果你真的想,你可以使用direct to JDBC
当涉及到API时,我非常确定您无法控制事务,因为您处于架构的外层。根据经验,我所看到的有效策略是,每个测试创建的数据在开始时“限定”在该流的范围内。当您使用GET数据时,您可以通过您感兴趣的数据进行过滤,或者通过API参数,或者您可以在空手道中进行过滤(通常是match contains,当涉及数组时)。
你可以看到一个典型的例子here
也可以看看这个thread:https://stackoverflow.com/a/60944060/143475

相关问题