Esempio n. 1
0
 def send_email(self):
     '''发送邮件'''
     try:
         smtp = smtplib.SMTP()
         smtp.connect(self.smtp_server)
         smtp.login(user=self.smtp_sender, password=self.smtp_password)
         smtp.sendmail(self.smtp_sender, self.smtp_receiver.split(",") + self.smtp_cc.split(","),self.emial_message_body().as_string())  # 接收者作为列表
         logger.info('发送邮件成功')
     except Exception as e:
         logger.error('邮件发送失败,失败的原因是:{}'.format( e.__str__() ))
Esempio n. 2
0
 def run(self):
     '''运行所有测试用例'''
     report_dir = HTMLTestReportCN.ReportDirectory(
         self.report_path)  # 创建测试报告的目录对象,传入测试报告路径
     report_dir.create_dir(self.title)  # 创建测试报告存放文件夹 create_dir() 起一个标题
     report_file_path = HTMLTestReportCN.GlobalMsg.get_value(
         'report_path')  # 创建路径,每次都会创建最新的文件
     logger.info(
         '\n\n====================================================创建测试报告文件路径成功====================================================\n\n'
     )
     fp = open(report_file_path, 'wb')  # 创建文件
     runner = HTMLTestReportCN.HTMLTestRunner(stream=fp,
                                              title=self.title,
                                              description=self.description,
                                              tester=self.tester)
     runner.run(self.load_test_suite())
     time.sleep(2)
     fp.close()
     return report_file_path  # 返回最新的测试报告路径供邮件调用
Esempio n. 3
0
 def load_test_suite(self):
     '''加载所有测试套件
     start_dir=self.test_case_path, 起始目录路径一般和top_level_dir一样
     pattern='api_test.py',#只有一个excel,可以写死
     '''
     try:
         discover = unittest.defaultTestLoader.discover(
             start_dir=self.test_case_path,
             pattern='api_test.py',
             top_level_dir=self.test_case_path)
         all_suite = unittest.TestSuite()  # 创建测试套件对象
         all_suite.addTest(discover)  # 加载discover中的东西
         logger.info(
             '\n\n====================================================加载所有测试用例完毕====================================================\n\n'
         )
         logger.info(
             '\n\n====================================================开始执行所有测试用例====================================================\n\n'
         )
     except Exception as e:
         logger.error(
             '\n\n===================================================加载所有测试用例失败,失败的原因是:{}====================================================\n\n'
             .format(e.__str__()))
     return all_suite  # 搜索用例加载测试用例,可以优化写成方法
Esempio n. 4
0
        runner = HTMLTestReportCN.HTMLTestRunner(stream=fp,
                                                 title=self.title,
                                                 description=self.description,
                                                 tester=self.tester)
        runner.run(self.load_test_suite())
        time.sleep(2)
        fp.close()
        return report_file_path  # 返回最新的测试报告路径供邮件调用


if __name__ == '__main__':

    writefakertestdatas.write_data()
    try:
        logger.info(
            '\n\n====================================================开始清除上次测试结果保留的值====================================================\n\n'
        )
        TestdataUtils().clear_result_from_excel()
        logger.info(
            '\n\n====================================================开始清除上次测试结果保留的值成功====================================================\n\n'
        )
    except Exception as e:
        logger.error(
            '\n\n===================================================清除上次测试结果保留的值失败,失败的原因是:{}==========================================\n\n'
            .format(e.__str__()))

    try:
        report_path = Runcase().run()
        logger.info(
            '\n\n===================================================已执行完所有测试用例,测试活动结束==========================================\n\n'
        )
Esempio n. 5
0
#!/usr/bin/env python
# encoding: utf-8
# @author: Mrliu
# @file: demo.py
# @time: 2020/5/13 23:09
# @desc:
import os
from common.nblog_utils import logger
logger.debug('liseen')
logger.info('liseen')
logger.warning('liseen')
Esempio n. 6
0
#!/usr/bin/env python
# encoding: utf-8
# @author: Mrliu
# @file: demo.py
# @time: 2020/5/13 23:09
# @desc:
import warnings
import paramunittest
import unittest
from common.testdata_utils import TestdataUtils
from common.requests_utils import RequestsUtils
from common.config_utils import conf
from common.nblog_utils import logger

case_infos = TestdataUtils().def_testcase_data_list()  #取出所有测试用例数据
logger.info('\n\n====================================================正在获取测试用例数据====================================================\n\n')

@paramunittest.parametrized(
    *case_infos
)

class ApiTest(paramunittest.ParametrizedTestCase):
    def setUp(self):
        '''解决报警问题'''
        warnings.simplefilter( 'ignore',ResourceWarning )

    def setParameters(self, case_id, case_info):
        self.case_id = case_id
        self.case_info = case_info

    def test_api_common_function(self):
    def write_data(self):

        data = logger.info('============开始写入测试数据:============\n{}'.format( self.write_to_excel(1, 8,{"username": "******", "password": "******","code": writefakertestdatas.get_goole_code(),"rememberMe": "1"}) ))
        return data