예제 #1
0
파일: excel.py 프로젝트: zxz12/webAutoTest
 def get_sheets(self):
     """
                     获取表格的所有sheets页
     :return:sheet页列表
     """
     sheet_names = self.rb.sheet_names()
     log.info("表格的sheet页: %s" % sheet_names)
     return sheet_names
예제 #2
0
파일: excel.py 프로젝트: zxz12/webAutoTest
 def __init__(self, filename=''):
     '''
     Constructor
     '''
     if CONSTANT.RES_PATH in filename:
         self.file = filename
     else:
         self.file = os.path.join(CONSTANT.RES_PATH, filename)
     log.info("==========正在打开的表格名称:%s============" % self.file)
     self.rb = xlrd.open_workbook(filename=self.file)
예제 #3
0
파일: excel.py 프로젝트: zxz12/webAutoTest
    def __init__(self, filename):
        if filename:
            if CONSTANT.RES_PATH in filename:
                self.file = filename
            else:
                self.file = os.path.join(CONSTANT.RES_PATH, filename)
            log.info("===========正在打开的表格名称:%s================" % self.file)
            rb = xlrd.open_workbook(filename=self.file)
            self.wb = copy(rb)

        else:
            log.info("新建表格")
            self.wb = xlwt.Workbook()
예제 #4
0
 def testName1(self, usr, pwd, rst):
     log.info("step: 测试登录接口")
     cmd = 'account_access'
     self.gt_in.set_body(key="cmd", value=cmd)
     self.gt_in.set_body(key="data", sec='user_name', value=usr)
     body = self.gt_in.set_body(key="data", sec='password', value=pwd)
     self.gt_in.send(data=body)
     body_raw = self.gt_in.recv()
     if 'time out' not in body_raw:
         body_dict = json.loads(body_raw)
         result = body_dict["data"]["result"]
     else:
         result = ""
     log.info("checkpoint: 检查登陆成功")
     print(result)
     self.assertEqual(result, rst, msg="测试结果不为%s" % rst)
예제 #5
0
 def get_email(self, key, key_type=''):
     '''
     * @Title: get_email
     * @Description:读取邮件配置信息
     * @parameter:
     * @author: 011305
     * @date 2021年4月13日 下午6:25:08
     '''
     if key_type == "int":
         value = self.cf.getint("EMAIL", key)
     elif key_type == "boolean":
         value = self.cf.getboolean("EMAIL", key)
     else:
         value = self.cf.get("EMAIL", key)
     log.info(key + ": " + str(value))
     return value
예제 #6
0
class testcase005_test_ddt(unittest.TestCase):
    '''
    * @Title:testcase005_test_ddt
    * @Description:测试数据驱动,登录接口
    * @author: 011305
    * @date 2021年4月13日 下午4:34:17
    '''
    @classmethod
    def setUpClass(cls):
        log.info("类预置条件: ")
        cls.gt_in = gate_interface()

    @classmethod
    def tearDownClass(cls):
        log.info("类收尾: ")
        cls.gt_in.close()

    def setUp(self):
        log.info("预置条件: ")

    def tearDown(self):
        log.info("收尾: ")

    @unittest.skip("不执行")
    @data(
        ("case0", "user", '123456', "ok"),
        ("case1", "user", '', "failed"),
    )
    @unpack
    def testName(self, case, usr, pwd, rst):
        log.info("step: 测试登录接口")
        log.info(case)
        cmd = 'account_access'
        self.gt_in.set_body(key="cmd", value=cmd)
        self.gt_in.set_body(key="data", sec='user_name', value=usr)
        body = self.gt_in.set_body(key="data", sec='password', value=pwd)
        self.gt_in.send(data=body)
        body_raw = self.gt_in.recv()
        if 'time out' not in body_raw:
            body_dict = json.loads(body_raw)
            result = body_dict["data"]["result"]
        else:
            result = ""
        log.info("checkpoint: 检查登陆成功")
        print(result)
        self.assertEqual(result, rst, msg="测试结果不为%s" % rst)
예제 #7
0
파일: excel.py 프로젝트: zxz12/webAutoTest
 def get_cols(self, sheet):
     """
                     读取表格指定sheet页的所有列
     :param sheet_name:sheet页名称
     :return:所有行列表,合并单元格默认等于同一列的第一格数据
     """
     colus = []
     sht = self.get_sheet(sheet)
     rows = sht.nrows
     cols = sht.ncols
     for i in range(cols):
         col = sht.col_values(colx=i, start_rowx=0, end_rowx=rows)
         colus.append(col)
     log.info("表格sheet页 ‘%s’ 的数据如下:" % sheet)
     for c in colus:
         log.info(c)
     return colus
예제 #8
0
파일: excel.py 프로젝트: zxz12/webAutoTest
 def get_lines(self, sheet):
     """
                     读取表格指定sheet页的所有行
     :param sheet_name:sheet页名称
     :return:所有行列表,合并单元格默认等于同一列的第一格数据
     """
     lines = []
     sht = self.get_sheet(sheet)
     rows = sht.nrows
     cols = sht.ncols
     for i in range(rows):
         line = sht.row_values(rowx=i, start_colx=0, end_colx=cols)
         lines.append(line)
     log.info("表格sheet页 ‘%s’ 的数据如下:" % sheet)
     for l in lines:
         log.info(l)
     return lines
class testcase004_test_parameterize(unittest.TestCase):
    '''
    * @Title:testcase004_test_parameterize
    * @Description:测试参数化,登录接口
    * @author: 011305
    * @date 2021年4月13日 下午2:04:49
    '''

    @classmethod
    def setUpClass(cls):
        log.info("类预置条件: ") 
        cls.gt_in=gate_interface()

    def setUp(self):
        log.info("预置条件: ") 

    @parameterized.expand([
            ("case0", "user", '123456', "ok"),
            ("case1", "user", '', "failed"),
            ("case2", "user", '1234567', "failed"),
            ("case3", "admin", '123456', 'failed'),
            ("case4", "", '123456', "failed"),
            ])
    def testName(self, case, usr, pwd, rst):
        log.info("step: 测试登录接口")
        log.info(case)
        cmd='account_access'
        self.gt_in.set_body(key="cmd", value=cmd) 
        self.gt_in.set_body(key="data", sec='user_name', value=usr)
        body=self.gt_in.set_body(key="data", sec='password', value=pwd)
        self.gt_in.send(data=body)
        body_raw=self.gt_in.recv()
        if 'time out' not in body_raw:
            body_dict=json.loads(body_raw)
            result=body_dict["data"]["result"]
        else:
            result=""
        log.info("checkpoint: 检查登陆成功")
        print(result)
        self.assertEqual(result, rst, msg="测试结果不为%s"%rst)
예제 #10
0
 def tearDown(self):
     log.info("收尾: ")
예제 #11
0
 def setUp(self):
     log.info("预置条件: ")
예제 #12
0
 def tearDownClass(cls):
     log.info("类收尾: ")
     cls.gt_in.close()
예제 #13
0
 def setUpClass(cls):
     log.info("类预置条件: ")
     cls.gt_in = gate_interface()
예제 #14
0
 def testName(self):
     log.info("step: 1.对比结果并将结果写回表格")
     gateway.compare_respose(self.filename)
     
     log.info("checkpoint: ")
예제 #15
0
파일: excel.py 프로젝트: zxz12/webAutoTest
 def close(self):
     self.rb.release_resources()
     log.info("=========正在关闭表格:%s==========" % self.file)
예제 #16
0
 def __init__(self):
     self.cf = configparser.ConfigParser()
     self.cf.read(configPath)
     log.info("配置文件打开ok")