Beispiel #1
0
    def enviarEmail(self, mensagem):

        clas = ReadConfig()
        config = clas.getConfig('../config/gmail.private')
        smtp = smtplib.SMTP(config.get('smtp'), config.get('port'))
        smtp.starttls()
        smtp.login(config.get('user'), config.get('password'))

        de = config.get('from')
        para = [config.get('to')]

        msg = """From: %s
To: %s
Subject: %s

%s

""" % (config.get('alias'), ', '.join(para), config.get('subject'), mensagem)

        print "[Mensagem] Enviando e-mail..."

        print msg

        smtp.sendmail(de, para, msg)

        print "[Mensagem] E-mail enviado."

        smtp.quit()
Beispiel #2
0
def main():

    # case_path = '%s/%s'%(_log.proDir,'test_case/%s'%(config.getConfig().get_case_path("path")))
    # log.info("case_path:%s"%case_path)
    # discover = unittest.defaultTestLoader.discover(case_path,'papi_hao_xin_qing.py')
    # discover.debug()
    # discover = unittest.TestLoader.

    # suite = unittest.TestSuite()
    # suite.addTest(unittest.TestLoader().loadTestsFromTestCase(config.get_cases()))

    # from importlib.util import find_spec
    # d = find_spec('Users.liweichao.workspace.interface_test.interface.test_case.dapi_hao_xin_qing.settings.py')

    for case_path_p, case_path_c, report_path, report_name in config.getConfig(
    ).get_cases():
        discover = unittest.defaultTestLoader.discover(case_path_p,
                                                       case_path_c)
        # discover.debug()
        now = time.strftime("%Y-%m-%d %H_%M_%S")
        report_name = now + report_name + '测试报告.html'
        log.info("report_name:%s" % (report_name))
        report_path_exists = os.path.exists(report_path)
        if not report_path_exists:
            os.makedirs(report_path)
        log.info("report_path:%s" % (report_path))
        desription = '自动化测试报告'
        log.info("desription:%s" % (desription))
        br.BeautifulReport(discover).report(filename=report_name,
                                            description=desription,
                                            log_path=report_path)
Beispiel #3
0
 def live_login(self):
     config = ReadConfig()
     # 从配置文件获取账户和密码
     username = config.getConfig("username")
     password = config.getConfig("password")
     self.send_keys("live_login", "账号输入框", username)
     self.send_keys("live_login", "密码输入框", password)
     self.click("live_login", "登录")
Beispiel #4
0
 def detail_login(self):
     """课程详情登录"""
     self.click("cms_login", "登录右")
     config = ReadConfig()
     username = config.getConfig("username")
     password = config.getConfig("password")
     self.send_keys("cms_login", "账号输入框", username)
     self.send_keys("cms_login", "密码输入框", password)
     self.click("cms_login", "登录按钮")
     self.wait_time(1)
     self.click("course_page", "进入课程")
Beispiel #5
0
        def wrapper(self, *args, **kwargs):
            try:
                kwargs = args[0].to_dict()
                m = kwargs.get(config.getConfig().request_method,
                               config.getConfig().get_http_method(self.model))
                req = HttpUtils(self.model)
                req.url = kwargs.get('api')
                self.log.info("api:%s" % (req.url))
                req.headers.update(kwargs.get('header', {}))
                req.params.update(kwargs.get('param', {}))
                req = getattr(req, str.lower(m))
                res = req()
                status_code = res.status_code
                res = res.json()

            except Exception as e:
                logger.exception(e, exc_info=True)
                res = None

            return func(self, status_code, res, *args, **kwargs)
Beispiel #6
0
    def cms_login_test(self):
        """登录是否成功方法"""
        self.click("cms_login", "登录右")
        config = ReadConfig()
        # 从配置文件获取账户和密码
        username = config.getConfig("username")
        # print(username)
        password = config.getConfig("password")
        # print(password)
        self.send_keys("cms_login", "账号输入框", username)
        self.send_keys("cms_login", "密码输入框", password)
        self.click("cms_login", "登录按钮")
        self.wait_time(1)

        #判断url检查是否登录成功
        g_url = self.get_url()
        print("获取的地址:%s" % g_url)

        t_url = 'https://course.beta.e-ducation.cn/home/'
        print("实际的地址:%s" % t_url)

        self.check_url(g_url, t_url, '登录')
        return self.check_url(g_url, t_url, '登录')
Beispiel #7
0
    def course_login(self):
        """创建课程的登录方法"""
        self.click("cms_login", "登录右")
        config = ReadConfig()
        # 从配置文件获取账户和密码
        username = config.getConfig("username")
        password = config.getConfig("password")
        self.send_keys("cms_login", "账号输入框", username)
        self.send_keys("cms_login", "密码输入框", password)
        self.click("cms_login", "登录按钮")
        self.wait_time(0.8)

        while self.is_displayed("course_create", "创建课程标题") == False:
            self.click("course_create", "创建课程按钮")
            print(self.is_displayed("course_create", "创建课程标题"))
Beispiel #8
0
class Testwork(unittest.TestCase):
    @classmethod
    def setUpClass(cls):
        cls.log = Log.MyLog.get_log().logger

    @file_data(ReadConfig.getConfig().get_case('test_demo'))
    @request()
    @my_assert()
    def test(self, status_code, res, *args, assert_res=None, **kwargs):
        self.log.info(res)
        # self.log.info(kwargs)
        if assert_res is not None:
            for ar in assert_res:
                if isinstance(ar, types.GeneratorType):
                    for a in ar:
                        self.log.info(a.assert_res)
                        self.log.info(a.assert_msg)
                        self.assertEqual(True, a.assert_res, a.assert_msg)
class PapiHaoXinQing(unittest.TestCase):
    @classmethod
    def setUpClass(cls):
        cls.log = Log.MyLog.get_log().logger
        cls.model = model
        # param = import_module('settings')
        # print(param)

    @file_data(ReadConfig.getConfig().get_case(model))
    @request()
    @my_assert()
    def test(self, status_code, res, *args, assert_res=None, **kwargs):
        self.log.info(res)
        self.log.info(kwargs)
        if assert_res is not None:
            for ar in assert_res:
                if isinstance(ar, types.GeneratorType):
                    for a in ar:
                        self.log.info(a.assert_res)
                        self.log.info(a.assert_msg)
                        self.assertEqual(True, a.assert_res, a.assert_msg)
Beispiel #10
0
import unittest, os
import common.log as Log
import types
from common.common import get_xls, my_assert
from ddt import ddt, data, unpack, file_data
from readConfig import ReadConfig
from common.common import request


@ddt(model=ReadConfig.getConfig().get_model("model"))
class Testwork(unittest.TestCase):
    @classmethod
    def setUpClass(cls):
        cls.log = Log.MyLog.get_log().logger

    @file_data(ReadConfig.getConfig().get_case('test_demo'))
    @request()
    @my_assert()
    def test(self, status_code, res, *args, assert_res=None, **kwargs):
        self.log.info(res)
        # self.log.info(kwargs)
        if assert_res is not None:
            for ar in assert_res:
                if isinstance(ar, types.GeneratorType):
                    for a in ar:
                        self.log.info(a.assert_res)
                        self.log.info(a.assert_msg)
                        self.assertEqual(True, a.assert_res, a.assert_msg)

        # self.failIf(http_status in (404,400,500),"%s 服务请求失败"%(http_status))
        # assert_dic:dict = kwargs.get('assert')