将单个测试用例添加到UTPLSQL中的套件中



我有一个包含6个测试用例的测试包。我想建造2个套房:1个包含test1,test2第二个包含test3,test4,测试5

根据文档,我们只能将整个测试包添加到套件,而不是单个测试用例。另外,我不想根据套件的要求将包裹分割为同一组,但功能不同。

对此提出的任何建议将不胜感激。而且,请随时让我知道我目前的理解是否错了。提前致谢。添加一些示例代码:

CREATE PACKAGE ut_test_pkg 
IS BEGIN 
PROCEDURE ut_test1;
   PROCEDURE ut_test2;
   PROCEDURE ut_test3;
   PROCEDURE ut_test4;
   PROCEDURE ut_test5; 
END;
 / 

现在test1和test2在逻辑上是1个测试用例,而Test3-5另一个。我可以喜欢:

begin 
utplsql.test ('test_pkg', recompile_in => FALSE, subprogram_in => 'test1');         utplsql.test ('test_pkg', recompile_in => FALSE, subprogram_in => 'test2'); 
end; 
/

,但将其添加到套件中可以增加简单性。它可以简单地运行该套件用于clumbing test1,test2和test3-5。

在单独运行时,我会得到::
的输出成功
测试1< 50行>
失败
测试2< 50行>

我有接近100张检查,因此测试结果之间的差距很大,用户必须滚动很多。我希望添加一个标题,该标题在顶部说最终结果,例如在他们所做的测试套件中,在哪里,

套房失败
成功
测试1< 50行>
失败
测试2< 50行>

看起来我为查询找到了一个可行且非常简单的解决方案。我只需要在测试运行期间正确指定子程序部分即可。因此,首先,我需要俱乐部的所有测试用例必须包含一个可以用来搜索的常见字符串::

CREATE PACKAGE ut_test_pkg 
IS BEGIN 
   PROCEDURE ut_abc_test1;
   PROCEDURE ut_abc_test2;
   PROCEDURE ut_def_test3;
   PROCEDURE ut_def_test4;
   PROCEDURE ut_def_test5; 
END;
 / 

执行时,我会像::

这样做
begin
  utplsql.test ('test_pkg', recompile_in => FALSE, subprogram_in => '%abc%');
end
/
begin
  utplsql.test ('test_pkg', recompile_in => FALSE, subprogram_in => '%def%');
end;
/

这将在第一种情况下运行包含ABC的测试用例,并在dbms_output的顶部显示合并结果[成功/失败]。因此,用户无需滚动即可检查每个测试的测试案例。同样,对于第二次运行中的def。

感谢您对此的帮助。

最新更新