Esempio n. 1
0
def loginShanghu():
    url = 'https://qd.qdingnet.com/managerbg/home/loginByMobile'
    data = 'callback=angular.callbacks._1&mobile=15001365242&orgTypeFlag=sh&password=5242&remember=false'
    http_method.do_pcget(url, data)
    url = 'https://shanghu.qdingnet.com/merchantbg/admin/login/currentUser'
    data = 'remember=true'
    name = 'shanghu'
    login(name, url, data)
Esempio n. 2
0
def loginProperty():
    url = 'https://qd.qdingnet.com/managerbg/home/loginByMobile'
    data = 'callback=jQuery111007020590975880623_1468319377873&mobile=18311078056&password=123qwe&orgTypeFlag=wy&_=1468319377875'
    http_method.do_pcget(url, data)
    url = 'https://property.qdingnet.com/login'
    data = 'uuId=ff808181539dffee01539e005c9300e0'
    name = 'property'
    login(name, url, data)
Esempio n. 3
0
def loginM2():
    url = 'https://m2.iqdnet.com/location/choose/1789'
    data = ''
    http_method.do_pcget(url, data)
    url = 'https://m2.iqdnet.com/account/login'
    data = 'mobile=13552487304&password=487304'
    http_method.do_pcpost(url, data)
    url = 'https://m2.iqdnet.com/profile'
    data = ''
    name = 'm2'
    login(name, url, data)
Esempio n. 4
0
def loginFinance():
    # 登录前先退出

    url = 'https://finance.qdingnet.com/#/logout'
    http_method.do_pcget(url, '')
    logger.info('finance退出成功')

    url = 'https://finance.qdingnet.com/managerbg/home/login'
    data = 'account=finance&captcha=EndTo2&password=qdf2016&remember=false&orgTypeFlag=cw'
    http_method.do_pcpost(url, data)
    url = 'https://finance.qdingnet.com/managerbg/puser/get'
    data = 'orgTypeFlag=cw'
    name = 'finance'
    login(name, url, data)
Esempio n. 5
0
def loginBoss():
    # 登录前先推出
    url = 'https://qd.qdingnet.com/managerbg/home/logout'
    response = http_method.do_pcget(url, '')
    logger.info('bosscases退出成功')
    url = 'https://finance.qdingnet.com/#/logout'
    response = http_method.do_pcget(url, '')

    url = 'https://qd.qdingnet.com/managerbg/home/login'
    data = 'account=autotest&password=@349223382a!@&remember=false&orgTypeFlag=bs&captcha=EndTo2'
    response = http_method.do_pcpost(url, data)
    if response.getcode() == 200:
        logger.info("bosscases登录成功")
    else:
        logger.error("bosscases登录失败")
    # 存储缓存
    url = 'https://qd.qdingnet.com/managerbg/puser/get'
    data = 'remember=true'
    http_method.do_pcpost(url, data)
Esempio n. 6
0
def login(name, url, data):
    try:
        response = http_method.do_pcget(url, data)
        responses = response.read().decode('utf-8')
        time.sleep(2)
        if response.getcode() == 200:
            logger.info(name + "登录200")
        else:
            logger.error(name + "登录失败" + responses)
            runTime = datetime.datetime.utcnow() + datetime.timedelta(hours=8)
            runTime = runTime.strftime("%Y-%m-%d %H:%M:%S")
            param = {"msg": "sniffer:登录异常;" + name + 'runTime:' + runTime}
            sendWarning.sendWeixinMsg(param)
            sendWarning.sendEmail(runTime + ":失败",
                                  name + '登录失败return_result:' + responses,
                                  '*****@*****.**')
    except Exception as e:
        logger.error(name + "登录失败" + str(e))
Esempio n. 7
0
def runOther():

    sniffer = SnifferCases.objects.filter(state='1').exclude(
        system__endswith="app").order_by('system')
    whichSystem = 'foo'
    return_result = 'NK'
    runTime = datetime.datetime.utcnow() + datetime.timedelta(hours=8)
    runTime = runTime.strftime("%Y-%m-%d %H:%M:%S")
    result = SnifferResult.objects.exclude(system__endswith="app")
    result.delete()
    for i in sniffer:
        resultCase = SnifferResult(
            cases_id=i.id,
            casename=i.casename,
            create_by=i.create_by,
            system=i.system,
            request=i.url + '&' + i.data,
            method=i.method,
            create_at=runTime,
            result='0',  # 初始化状态
            return_result='going',  # 执行进行中
        )
        resultCase.save()
        result_id = resultCase.id
        if i.system != whichSystem:
            if i.system == 'boss':
                login.loginBoss()
                whichSystem = i.system
            elif i.system == 'shanghu':
                login.loginShanghu()
                whichSystem = i.system
            elif i.system == 'm2':
                login.loginM2()
                whichSystem = i.system
            elif i.system == 'property':
                login.loginProperty()
                whichSystem = i.system
            elif i.system == 'finance':
                login.loginFinance()
                whichSystem = i.system
        try:
            if i.method == 'POST':
                response = http_method.do_pcpost(i.url, i.data)
            elif i.method == 'GET':
                response = http_method.do_pcget(i.url, i.data)
            return_result = response.read().decode('utf-8')
            logger.info(i.system + i.casename + "返回结果:" +
                        str(response.getcode()) + ":" + str(return_result))
        except Exception as e:
            logger.error(i + "接口:" + i.system + i.casename + "--截取异常——" +
                         str(e))
        if '"code":500' in return_result or response.getcode() != 200:
            result = '2'

            # 如果失败,允许发送短信和pus执行,否则只执行邮件
            if i.is_warning == 'yes':
                tpl_value = {
                    '#name#': i.system,
                    '#card#': i.casename,
                    '#time#': runTime,
                    '#money#': '崩溃'
                }
                sendWarning.sendMsg(tpl_value, mobile)
                logger.info("已经短信通知:" + mobile + str(tpl_value))
                # param = {"msg": "sniffer:崩溃" + i.system + "接口:" + i.casename + "; 责任人:" + str(
                #     i.emailto) + ";时间:" + runTime + ";链接:" + i.url}
                # sendWarning.sendWeixinMsg(param)
                msg = {
                    'system': i.system,
                    'rank': i.casename + '崩溃',
                    'info': '返回' + return_result[0:150],
                    'time': runTime,
                    'do': '赶紧解决吧'
                }
                weixin_msg.send_sms(openid, msg)
            sendWarning.sendEmail(
                runTime + i.system + i.casename + ":崩溃", i.method + i.url +
                '&' + i.data + 'return_result:' + return_result, i.emailto)
            logger.error(i.system + i.casename + "执行报错了!崩溃级别" + i.method +
                         i.url + '&' + i.data + 'return_result:' +
                         return_result)
        else:
            if i.expect in return_result:
                result = '1'  # 执行验证成功
                # logger.info("执行成功" + i.system + i.casename)
            else:
                result = '-1'  # 执行验证失败

                # 如果失败,允许发送短信和pus执行,否则只执行邮件logger.error("断言异常" + i.system + i.casename + return_result)
                if i.is_warning == 'yes':
                    # param = {"msg": "sniffer:监控异常;" + i.system + "接口:" + i.casename + "; 责任人:" + str(
                    #     i.emailto) + ";时间:" + runTime + ";链接:" + i.url}
                    # sendWarning.sendWeixinMsg(param)
                    msg = {
                        'system': i.system,
                        'rank': i.casename + '异常',
                        'info': '返回' + return_result[0:150],
                        'time': runTime,
                        'do': '看邮件解决吧!'
                    }
                    weixin_msg.send_sms(openid, msg)
                sendWarning.sendEmail(
                    runTime + i.system + i.casename + ":异常", i.method + i.url +
                    '&' + i.data + 'return_result:' + return_result, i.emailto)

        resultEnd = SnifferResult.objects.get(id=result_id)
        resultEnd.result = result
        resultEnd.return_result = return_result
        resultEnd.save()  # 写入数据库