如何从 DBFit 测试中保留更改

How to persist changes from inside DBFit test

我需要根据数据库中的特定值测试打包过程的输出 table。所以,我创建了一个测试:

  1. 将数据库值更新为 NULL
  2. 提交
  3. 执行打包过程return获取一个值
  4. 将数据库值更新为 'N'
  5. 提交
  6. 再次执行打包过程return输入另一个值

似乎从未提交数据库值,因此打包过程 return 始终是相同的值。 这是测试:

!path lib/*.jar

!|dbfit.OracleTest|
!|ConnectUsingFile|DBConnections/DBConnection.properties|

|set option|fixed length string parsing|true|

|Update|my_table|
|col_value=|col_name|
|NULL|val|

|Commit|

!|Execute Procedure|pckg.proc|
|birth_date_|gender_|first_name_|last_name_|?|                 
|NULL|F|Rita|Rita|>>ref_cur1|

|Update|my_table|
|col_value=|col_name|
|N|val|

|Commit|

!|Execute Procedure|pckg.proc|
|birth_date_|gender_|first_name_|last_name_|?|                 
|NULL|F|Rita|Rita|>>ref_cur2|

!2.4. Compare expected values and actual values

!|Query|<<ref_cur1|
|j_status|
|-32|

!|Query|<<ref_cur2|
|j_status|
|-39|

|Rollback|

问题是它总是return相同的状态,根据测试开始前数据库列的值。如果从一开始就是 NULL,那么两个 return 值都是 -39,如果从一开始就是 'N',那么两个 return 值都是 -32。

关于如何保留更改的任何想法?

好吧,我得到了答案,那就是我必须更改

|更新|my_table|

部分待

!|执行|更新 my_table 设置 .....|

然后我就不需要了

|提交|