如何从 DBFit 测试中保留更改
How to persist changes from inside DBFit test
我需要根据数据库中的特定值测试打包过程的输出 table。所以,我创建了一个测试:
- 将数据库值更新为 NULL
- 提交
- 执行打包过程return获取一个值
- 将数据库值更新为 'N'
- 提交
- 再次执行打包过程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 设置 .....|
然后我就不需要了
|提交|
我需要根据数据库中的特定值测试打包过程的输出 table。所以,我创建了一个测试:
- 将数据库值更新为 NULL
- 提交
- 执行打包过程return获取一个值
- 将数据库值更新为 'N'
- 提交
- 再次执行打包过程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 设置 .....|
然后我就不需要了
|提交|