Kdg*_*Dev 6 unit-testing h2 playframework playframework-2.2
我有一个基类,我的所有控制器测试都扩展.这是设置的,因此每个单元测试都可以有自己的Fixture来加载.
因此@Before覆盖将检查测试所需的夹具是什么,加载它然后开始测试.
这里的问题是每次重新加载夹具.即使该方法只对数据库进行了选择,也没有改变.
Play Framework使用的内部存储器数据库是H2数据库.我想知道在单元测试完成后是否有办法检查,如果数据库发生了变化,如果没有,则跳过重新加载完全相同的数据.
我尝试过identity_scope,无论如何都会返回null.
H2 无法检查上次应用更改的时间。但是,您可以创建一个附加列来保存上次修改时间
CREATE TABLE TEST(ID INT, NAME VARCHAR, LAST_MOD TIMESTAMP AS NOW());
Run Code Online (Sandbox Code Playgroud)
这样你可以保存一个测试开始时间,然后查询数据库是否有任何修改日期在测试开始时间之后。
我看不到任何其他可能的方法
| 归档时间: |
|
| 查看次数: |
231 次 |
| 最近记录: |