zoukankan      html  css  js  c++  java
  • unittest 用例间数据共享参数传递.

     1 import unittest
     2 import requests
     3 import urllib3
     4 urllib3.disable_warnings()
     5 import warnings  # 解决错误 ResourceWarning: Enable tracemalloc to get the object allocation traceback
     6 from lxml import etree
     7 from loginfuction import login # 多个函数中间可用逗号隔开. from time import * 导入全部功能
     8 
     9 # 数据共享 #44 #50 本用例数据需在下一用例调用, 全局变量: globals()["result"] = userinfo_1_result
    10 
    11 class TestUserInfo(unittest.TestCase):
    12 
    13 
    14     @classmethod # 所有的测试用例之前, 只执行一次.
    15     def setUpClass(cls):    # 本函数内的变量如果需要在其它函数使用, 需要在变量名前加 cls.变量名
    16         # 解决错误 ResourceWarning: Enable tracemalloc to get the object allocation traceback
    17         warnings.simplefilter('ignore',ResourceWarning)
    18         cls.s = requests.session()
    19         cls.s.verify = False
    20         # 解决InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised.
    21         requests.packages.urllib3.disable_warnings()
    22         cls.r = login(cls.s)
    23 
    24 
    25     def setUp(self): #每个用例之前都会执行
    26         self.newstr = "需要在其它函数调用, 需要在变量前加 self.newstr"
    27 
    28 
    29     @classmethod
    30     def tearDownClass(cls): # 所有测试用例之后, 只执行一次
    31          cls.s.close() # 关闭会话
    32 
    33 
    34     def test_userinfo_1(self):
    35 
    36         return_html = etree.HTML(self.r.text)
    37         username_nodes = return_html.xpath('.//*[@class="username"]')
    38         result = username_nodes[0].xpath('.//text()')[0]
    39         exp_result = 'xx@hichina.com'
    40         print(self.newstr)
    41 
    42         userinfo_1_result = "用例1获取到的结果"
    43         # 数据共享 本用例数据需在下一用例调用, 全局变量: globals()["result"] = userinfo_1_result
    44         globals()["result"] = userinfo_1_result
    45         # 断言 实际结果 = 预期结果
    46         assert result == exp_result
    47 
    48 
    49     def test_userinfo_2(self):
    50         userinfo_2_result = globals()["result"]
    51         print('userinfo_2_result)  # 用例1获取到的结果
    52 
    53 
    54 # 如果在当前脚本执行,执行下方的代码.  如果当前脚本是被其它代码导入,则不执行下列代码. __name__ 名字 __main__ 自己
    55 if __name__ == '__main__':
    56     unittest.main()
  • 相关阅读:
    NTDS活动目录数据库维护--碎片整理、移动数据库文件、日志文件
    管理活动目录数据库
    NTDS活动目录数据库维护--碎片整理、移动数据库文件、日志文件
    IIS上的反向代理
    java.lang.OutOfMemoryError: Metaspace 的解决
    WPF分页控件
    C#学习笔记之.Static关键字
    C#学习笔记之简说参数
    C#学习笔记之Winform登录注册
    C#学习笔记之XML工具类
  • 原文地址:https://www.cnblogs.com/levia/p/14777566.html
Copyright © 2011-2022 走看看