コード例 #1
0
def get_login_userid():

    # 查询登录测试用户userid
    SQL = "select tu_id from stt_user  where loginname = " + "\"" + user + "\"" + ";"
    mysqlutil = MysqlUtil()

    userid = mysqlutil.mysql_getstring(SQL)
    return str(userid)
コード例 #2
0
    def member_selectDiscountActivity_id(self):

        A = MysqlUtil()
        sql = "SELECT id from biz_discount_activity WHERE version = '0' GROUP BY activity_start_time DESC  LIMIT 1;"
        A.mysql_execute(sql)
        result = A.mysql_getrows(sql)
        A.mysql_close()
        return result
コード例 #3
0
 def member_updateMemberDeviceInfo_id(self):
     u"""查询修改绑定的设备信息"""
     A = MysqlUtil()
     sql = "SELECT user_id FROM biz_member_device_info WHERE id = '61';"
     A.mysql_execute(sql)
     result = A.mysql_getrows(sql)
     A.mysql_close()
     return result
コード例 #4
0
class Maintain_siteCapacityInfo(unittest.TestCase):
    u'''
    获取站点运力数据接口
    '''
    log = Log()
    mysqlutil = MysqlUtil()
    log.info("---获取站点运力数据接口测试---")

    def siteCapacityInfo(self,siteDetailId):
        '''一个参数:
        siteDetailId:string
        '''
        ip = readConfig.ip
        i_port = readConfig.i_port

        url = "http://" + ip + ":" + i_port + "/backend/capacity/maintain/siteCapacityInfo"
        header = {
            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0",
            "X-Requested-With": "XMLHttpRequest",
            "Connection": "keep-alive"
                 }
        par = {"siteDetailId":siteDetailId}
        r = requests.get(url,params=par)
        result = r.json()
        self.log.info("---获取站点运力数据接口响应:%s"%result)
        sql = "SELECT id FROM cap_site_detail WHERE id IS NOT NULL AND id <> '' GROUP BY id;"
        siteDetailIds = self.mysqlutil.mysql_getrows(sql)
        s_siteDetailIds = siteDetailIds.__str__()
        if siteDetailId in s_siteDetailIds and siteDetailId != '':
            self.assertEqual(result["code"], '0000')
            self.assertEqual(result["msg"], '接口正常')
            sql1 = "SELECT org_name FROM cap_organization WHERE org_code IN (SELECT site_id FROM cap_site_detail WHERE id IN ( %s ));"%siteDetailId
            sitename = self.mysqlutil.mysql_getrows(sql1)[0][0]
            self.assertEqual(result["data"]["siteName"],sitename)
        elif siteDetailId == '':
            self.assertEqual(result["code"], '0025')
            self.assertEqual(result["msg"], '参数不能为空')
            self.assertEqual(result["data"], {})
        elif siteDetailId != '' and siteDetailId not in s_siteDetailIds:
            self.assertEqual(result["code"], '0000')
            self.assertEqual(result["msg"], '接口正常')
            self.assertEqual(result["data"], None)


    def test_siteinfo1(self):
        u'''测试获取站点运力数据接口:请求参数正确'''
        self.log.info("---1.请求参数正确:start!---")
        siteDetailId = '10'
        sql2 = ""
        self.siteCapacityInfo(siteDetailId)
        self.log.info("---pass---")
        self.log.info("")

    def test_siteinfo2(self):
        u'''测试获取站点运力数据接口:siteDetailId不存在'''
        self.log.info("---2.siteDetailId传入不存在:start!---")
        siteDetailId = 'abc'
        self.siteCapacityInfo(siteDetailId)
        self.log.info("---pass---")
        self.log.info("")

    def test_siteinfo3(self):
        u'''测试获取站点运力数据接口:siteDetailId传入为空'''
        self.log.info("---3.siteDetailId传入为空:start!---")
        siteDetailId = ''
        self.siteCapacityInfo(siteDetailId)
        self.log.info("---pass---")
        self.log.info("")

    if __name__ == "__main__":
        unittest.main()
コード例 #5
0
class Common_sites(unittest.TestCase):
    u'''
    站点列表接口
    '''
    log = Log()
    mysqlutil = MysqlUtil()
    log.info("---站点列表接口测试---")

    def sites(self, cityCompanyCode):
        '''一个参数
        市公司编码:cityCompanyCode
        :param cityCompanyCode:
        :return:
        '''
        ip = readConfig.ip
        i_port = readConfig.i_port

        url = "http://" + ip + ":" + i_port + "/backend/capacity/common/sites"
        headers = {
            "User-Agent":
            "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.104 Safari/537.36",
            "X-Requested-With": "XMLHttpRequest",
            "Connection": "keep-alive",
            "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8"
        }
        d = {"cityCompanyCode": cityCompanyCode}
        r = requests.post(url, data=d, headers=headers)
        result = r.json()

        self.log.info("---获取响应结果:%s" % result)
        # self.log.info("---校验code字段---")
        self.assertEqual(result["code"], '0000')

        # self.log.info("---校验msg字段---")
        self.assertEqual(result["msg"], '接口正常')

        sql1 = "SELECT parent_code FROM cap_organization  WHERE LEVEL = '3' GROUP BY parent_code;"
        cityCompanyCodes = self.mysqlutil.mysql_getrows(
            sql1)  #从数据库中取出所有的市公司编码(parent_code)
        s_cityComcityCompanyCodes = cityCompanyCodes.__str__()  #将元组转换成字符串
        # a_city = cityCompanyCodes[random.randint(0,(len(cityCompanyCodes)))][0]

        if cityCompanyCode in s_cityComcityCompanyCodes:
            # self.log.info("---校验data中的查询结果数量---")
            sql = "SELECT * FROM cap_organization WHERE LEVEL = '3' AND parent_code = '%s';" % cityCompanyCode
            counts = self.mysqlutil.mysql_getcounts(sql)
            self.assertEqual(len(result["data"]), counts)
        elif cityCompanyCode == '':
            # self.log.info("---校验data中的查询结果数量---")
            self.assertEqual(result["data"], [])
        elif cityCompanyCode != '' and cityCompanyCode not in s_cityComcityCompanyCodes:
            # self.log.info("---校验data中的查询结果数量---")
            self.assertEqual(result["data"], [])

    def test_sites1(self):
        u'''测试站点列表接口:请求参数正确'''
        self.log.info("---1.请求参数正确:start!---")
        sql1 = "SELECT parent_code FROM cap_organization  WHERE LEVEL = '3' GROUP BY parent_code;"
        cityCompanyCodes = self.mysqlutil.mysql_getrows(sql1)
        print(cityCompanyCodes)
        cityCompanyCode = cityCompanyCodes[random.randint(
            0, (len(cityCompanyCodes)))][0]
        self.sites(cityCompanyCode)
        self.log.info("---pass---")
        self.log.info("")

    def test_sites2(self):
        u'''测试站点列表接口:cityCompanyCode传入为空'''
        self.log.info("---2.cityCompanyCode传入为空:start!---")
        cityCompanyCode = ""
        self.sites(cityCompanyCode)
        self.log.info("---pass---")
        self.log.info("")

    def test_sites3(self):
        u'''测试站点列表接口:cityCompanyCode传入不存在的市公司编码'''
        self.log.info("---3.cityCompanyCode传入不存在的市公司编码:start!---")
        cityCompanyCode = "a"
        self.sites(cityCompanyCode)
        self.log.info("---pass---")
        self.log.info("")
コード例 #6
0
class Capsummary_update(unittest.TestCase):
    u'''
    站点运力修改
    '''

    s = requests.session()
    lon = Login(s)
    log = Log()
    mysqlutil = MysqlUtil()
    log.info("---站点运力修改接口测试---")

    def update(self, datas):
        '''一个参数
        datas
        :param datas:
        :return:
        '''
        ip = readConfig.ip
        i_port = readConfig.i_port

        url = "http://" + ip + ":" + i_port + "/backend/capacity/capsummary/update"
        headers = {
            "User-Agent":
            "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.104 Safari/537.36",
            "X-Requested-With": "XMLHttpRequest",
            "Connection": "keep-alive",
            "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8"
        }

        code = "xuxingan"
        passwd = "admin"
        self.lon.login(code, passwd)
        d = {"datas": datas}
        r = self.s.post(url, data=d, headers=headers)
        result = r.json()
        print(result)

        sql = " SELECT id FROM cap_delivery_detail  GROUP BY id;"
        ids = self.mysqlutil.mysql_getrows(sql)
        s_ids = ids.__str__()
        if datas != '':
            for i in datas.split(','):
                if i.split('&')[0] in s_ids:
                    self.assertEqual(result["code"], '0000')
                    self.assertEqual(result["msg"], '接口正常')
                    self.assertEqual(result["data"], [])
                elif i.split('&')[0] not in s_ids:
                    self.assertEqual(result["code"], '9999')
                    self.assertEqual(result["msg"], '未知异常')
                    self.assertEqual(result["data"], {})
        elif datas == '':
            self.assertEqual(result["code"], '0025')
            self.assertEqual(result["msg"], '参数不能为空')
            self.assertEqual(result["data"], {})

    def test_update1(self):
        u'''测试站点运力修改接口:修改一条记录'''
        self.log.info("---1.修改一条记录:start!---")
        datas = '6&10'
        self.update(datas)
        self.log.info("---pass---")
        self.log.info("")

    def test_update2(self):
        u'''测试站点运力修改接口:批量修改多条记录'''
        self.log.info("---2.批量修改多条记录:start!---")
        datas = '6&10,8&20,10&0'
        self.update(datas)
        self.log.info("---pass---")
        self.log.info("")

    def test_update3(self):
        u'''测试站点运力修改接口:批量修改多条记录'''
        self.log.info("---3.datas传入为空:start!---")
        datas = ''
        self.update(datas)
        self.log.info("---pass---")
        self.log.info("")
コード例 #7
0
import time, requests, datetime, json
from common.mysql_pub import MysqlUtil
from os import environ

host = environ.get('host')
user = environ.get('user')
passwd = environ.get('passwd')
sql_folder = environ.get('sql_folder')

# host = "http://192.168.1.15:8080"
# user = "******"
# passwd = "111111"
# sql_folder = r"C:\\Users\\Administrator\\PycharmProjects\\ecs_test\sql\\"

mysql_db = MysqlUtil()
s = requests.session()


def sleep(n_secs):
    time.sleep(n_secs)


def hook_sql(filename):
    sql_path = sql_folder + filename
    # 读取 sql 文件文本内容
    sql = open(sql_path, 'r', encoding='utf8')

    sqltxts = sql.readlines()
    sqltxts = [x.strip() for x in sqltxts]  # 去除换行符\n

    # 读取之后关闭文件
コード例 #8
0
class Maintain_export(unittest.TestCase):
    u'''
    站点运力列表导出接口
    '''
    log = Log()
    mysqlutil = MysqlUtil()
    log.info("---站点运力列表导出接口测试---")

    def export(self, beginTime, endTime, siteId):
        '''三个参数:
        开始时间:beginTime,结束时间:endTime,站点id:siteId
        '''
        ip = readConfig.ip
        i_port = readConfig.i_port

        url = "http://" + ip + ":" + i_port + "/backend/capacity/maintain/export"
        header = {
            "User-Agent":
            "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0",
            "X-Requested-With": "XMLHttpRequest",
            "Connection": "keep-alive"
        }
        par = {"beginTime": beginTime, "endTime": endTime, "siteId": siteId}
        r = requests.get(url, params=par)
        result_head = r.headers
        self.log.info("---站点运力列表导出接口响应头:%s" % result_head)
        sql = "SELECT site_id FROM cap_site_detail GROUP BY site_id;"
        siteids = self.mysqlutil.mysql_getrows(sql)
        s_siteids = siteids.__str__()

        if siteId in s_siteids and beginTime < endTime and beginTime != '' and endTime != '' and siteId != '':
            self.assertIn('.xls', result_head['Content-Disposition'])
        elif beginTime > endTime and beginTime != '' and endTime != '':
            result_body = r.json()
            self.log.info("---站点运力列表导出接口响应:%s" % result_body)
            self.assertEqual(result_body["code"], '0026')
            self.assertEqual(result_body["msg"], '未查询到数据')
            sql2 = "SELECT * FROM cap_site_detail WHERE site_id IN (%s) AND site_date >= '%s' AND site_date <= '%s';" % (
                siteId, beginTime, endTime)
            query_count = self.mysqlutil.mysql_getcounts(sql2)
            self.assertEqual(len(result_body["data"]), query_count)
            self.assertEqual(result_body["data"], {})
        elif beginTime == '' or endTime == '' or siteId == '':
            result_body = r.json()
            self.log.info("---站点运力列表导出接口响应:%s" % result_body)
            self.assertEqual(result_body["code"], '0025')
            self.assertEqual(result_body["msg"], '参数不能为空')
            self.assertEqual((result_body["data"]), {})

    def test_export1(self):
        u'''测试站点运力列表导出接口:请求参数正确'''
        self.log.info("---1.请求参数正确:start!---")
        beginTime = '2017-08-25'
        endTime = '2017-08-31'
        siteId = '22'
        self.export(beginTime, endTime, siteId)
        self.log.info("---pass---")
        self.log.info("")

    def test_export2(self):
        u'''测试站点运力列表导出接口:beginTime大于endTime'''
        self.log.info("---2.beginTime大于endTime:start!---")
        beginTime = '2017-08-31'
        endTime = '2017-08-25'
        siteId = '22'
        self.export(beginTime, endTime, siteId)
        self.log.info("---pass---")
        self.log.info("")

    def test_export3(self):
        u'''测试站点运力列表导出接口:beginTime传入为空'''
        self.log.info("---3.beginTime传入为空:start!---")
        beginTime = ''
        endTime = '2017-08-31'
        siteId = '22'
        self.export(beginTime, endTime, siteId)
        self.log.info("---pass---")
        self.log.info("")

    def test_export4(self):
        u'''测试站点运力列表导出接口:endTime传入为空'''
        self.log.info("---4.endTime传入为空:start!---")
        beginTime = '2017-08-25'
        endTime = ''
        siteId = '22'
        self.export(beginTime, endTime, siteId)
        self.log.info("---pass---")
        self.log.info("")

    def test_export5(self):
        u'''测试站点运力列表导出接口:siteId传入为空'''
        self.log.info("---5.siteId传入为空:start!---")
        beginTime = '2017-08-25'
        endTime = '2017-08-31'
        siteId = ''
        self.export(beginTime, endTime, siteId)
        self.log.info("---pass---")
        self.log.info("")

    def test_export6(self):
        u'''测试站点运力列表导出接口:beginTime,endTime和siteId传入为空'''
        self.log.info("---6.beginTime,endTime和siteId传入为空:start!---")
        beginTime = ''
        endTime = ''
        siteId = ''
        self.export(beginTime, endTime, siteId)
        self.log.info("---pass---")
        self.log.info("")
コード例 #9
0
class Maintain_siteinfo(unittest.TestCase):
    u'''
    站长站点信息接口
    '''
    log = Log()
    mysqlutil = MysqlUtil()
    log.info("---站长站点信息接口测试---")

    def siteinfo(self, userCode):
        '''一个参数:
        登录用户code(工号):userCode
        '''

        ip = readConfig.ip
        i_port = readConfig.i_port

        url = "http://" + ip + ":" + i_port + "/backend/capacity/maintain/siteInfo"
        header = {
            "User-Agent":
            "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0",
            "X-Requested-With": "XMLHttpRequest",
            "Connection": "keep-alive"
        }
        par = {"userCode": userCode}
        r = requests.get(url, params=par)
        result = r.json()
        self.log.info("---站长站点信息接口响应:%s" % result)

        sql = "SELECT CODE FROM cap_courier WHERE CODE IS NOT NULL AND CODE <> '' GROUP BY CODE;"
        userCodes = self.mysqlutil.mysql_getrows(sql)
        s_userCodes = userCodes.__str__()
        if userCode in s_userCodes and userCode != '':
            self.assertEqual(result["code"], '0000')
            self.assertEqual(result["msg"], '接口正常')
            sql1 = "SELECT co.org_name FROM cap_organization co LEFT JOIN cap_courier cc ON co.`org_code` = cc.`org_code` WHERE cc.code = '%s';" % userCode
            orgname = self.mysqlutil.mysql_getrows(sql1)[0][0]
            self.assertEqual(result["data"]["orgName"], orgname)
        elif userCode == '':
            self.assertEqual(result["code"], '0025')
            self.assertEqual(result["msg"], '参数不能为空')
            self.assertEqual(result["data"], {})
        elif userCode != '' and userCode not in s_userCodes:
            self.assertEqual(result["code"], '0000')
            self.assertEqual(result["msg"], '接口正常')
            self.assertEqual(result["data"], None)

    def test_siteinfo1(self):
        u'''测试站长站点信息接口:请求参数正确'''
        self.log.info("---1.请求参数正确:start!---")
        userCode = 'CB00006447'
        self.siteinfo(userCode)
        self.log.info("---pass---")
        self.log.info("")

    def test_siteinfo2(self):
        u'''测试站长站点信息接口:登录用户code(工号)不存在'''
        self.log.info("---2.userCode传入不存在:start!---")
        userCode = 'abc'
        self.siteinfo(userCode)
        self.log.info("---pass---")
        self.log.info("")

    def test_siteinfo3(self):
        u'''测试站长站点信息接口:userCode传入为空'''
        self.log.info("---3.userCode传入为空:start!---")
        userCode = ''
        self.siteinfo(userCode)
        self.log.info("---pass---")
        self.log.info("")

    if __name__ == "__main__":
        unittest.main()