十六、对RF中ROBOT_LIBRARY_SCOPE = 'GLOBAL'进行分析

(1)ROBOT_LIBRARY_SCOPE属于ROBOT库范围,这个范围有三个等级,分别是TEST CASE、TEST SUITE、GLOBAL三个等级,默认是TEST CASE;GLOBAL这个等级用的比较多。

 

(2)在测试库中申明等级的作用是,调用这个类的方法时,就会实例化这个类
        1.TEST CASE:在每个test case中引用都会实例化一次
        2.TEST SUITE:在suite中引用,只会实例化一次,也就是说10个test case都引用了这个类的方法,但是只有第一个test case是调用的时候实例化,后续的共用
        3.GLOBAL:在全局只实例化一次,调用一次后,在所有suite中引用、test case中引用都不会再实例化
(3)实际举例:
  在 def __init__中加个输出日志:logger.info('test001',also_console=True)

(四)举例说明

  1.选择TEST CASE等级:建立两个测试套件,套件A中一个测试用例,套件B中两个测试用例----实际运行了输出4次日志

  2.选择TEST SUITE等级:建立两个测试套件,套件A中一个测试用例,套件B中两个测试用例----实际运行了输出3次日志

  3.选择GLOBAL等级:建立两个测试套件,套件A中一个测试用例,套件B中两个测试用例----实际运行了输出1次日志

4.不管用什么等级,都会全局调用一次,在TEST CASE或TEST SUITE中新创建一个实例,所以再次强烈建议用GLOBAL。

posted @ 2018-08-17 11:26  旅行没有终点  阅读(1169)  评论(0编辑  收藏  举报