比较表格中的多个列:回归测试

时间:2018-01-11 22:51:09

标签: oracle testing compare regression

我目前正在执行回归测试,并希望编写一个自动比较两个表之间的列值的查询。希望将来能够自动化这个功能。

基本上检查每个单元格。

我们目前正在使用基于Oracle和MSSQL的环境。

E.G。

Table A:

Column 1 |  Column 2 | Column 3
  540        EQUITY    10-09-12

Table B:

Column 1 |  Column 2 | Column 3
  330        CASH      10-03-11

非常感谢帮助。

1 个答案:

答案 0 :(得分:0)

我们的测试人员发现对此类比较有用的最简单的查询之一是使用MINUS运算符。

SELECT COUNT(*)
FROM   ((SELECT *
         FROM   tableA
         MINUS
         SELECT *
         FROM   tableB)
        UNION ALL
        (SELECT *
         FROM   tableB
         MINUS
         SELECT *
         FROM   tableA)) ; 

这会告诉您TableA中有多少行,而不是TableB中的TableB,而不是TableA。 如果两个表具有相同的结构并且您尝试仅比较值,则此方法有效。

您可以编写一个动态PL / SQL块,检查您需要在循环中比较的所有表的计数并生成报告。

您还可以在ToadSQL Developer中找到比较实用程序,它们也会比较表结构。例如: - 如果columnA在TableA中,在TableB等中丢失,则可以生成报告。

如果表格大小很小,您还可以使用外部文本比较工具,例如超越比较 Winmerge