51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

测试开发精英班,通向高级软件测试工程师【长期招募】博为峰网校招聘兼职讲师!【直播】Python自动化测试框架开发高级实战!>>
学软件开发,3大紧缺职位任你挑!【专家86期】浅谈敏捷在项目中的可持续发展!【51Testing专访】王磊:深度解析性能测试
测试知识大闯关102期活动热播中《51测试天地》测试大牛经验合集大放送!自学软件测试那点事
查看: 106|回复: 0

python接口ddt处理excel读取出来的参数

[复制链接]
  • TA的每日心情
    无聊
    昨天 12:55
  • 签到天数: 124 天

    连续签到: 3 天

    [LV.7]测试师长

    发表于 2017-8-11 17:56:51 | 显示全部楼层 |阅读模式
    python接口ddt处理excel读取出来的参数
    1、单独读取data一列,我这边会ddt处理掉
    def excel_data(case_name):
            book=xlrd.open_workbook('C:/request/case/case.xls')
            sheet= book.sheet_by_name('Sheet1')
            data=[]
            for i in range(0,sheet.nrows):
                    if sheet.row_values(i)[0]==case_name:
                            data1=eval(sheet.row_values(i)[2])
                            data.append(data1)
            return data


    2、现在读取一行,然后使用ddt处理到接口请求中,不知如何做?
    def excel_data(y):
            book=xlrd.open_workbook('C:/request/case/case.xls')
            sheet= book.sheet_by_name('Sheet1')
            data=[]
            for i in range(0,sheet.nrows):
                    if sheet.row_values(i)[0]=='y':
                            #sheet.row_values(i))

                            data.append(sheet.row_values(i))
            return data

    读取出来的结果:
    [['y', 'https://i299.2b.cn', "{'userAccount':'18221124101','verifyCode':'3979'}", "{"Content-Type'': "application/json"}"], ['y', 'https://i299.2b.cn', "{'userAccount':'18221124103','verifyCode':'3979'}", "{"Content-Type'': "application/json"}"], ['y', 'https://i299.2b.cn', "{'userAccount':'18221124104','verifyCode':'3979'}", "{"Content-Type'': "application/json"}"]]

    @ddt.ddt
    class Test(unittest.TestCase):
            '''登录'''
            data=excel.excel_data('y')
            def setUp(self):
                    pass
            def tearDown(self):
                    pass
            @ddt.data(*data)
            @unpack
    我这里要带入url和data怎么做,我这样做应该错的?
            def test1(self,data):#封装登录函数
                    r=requests.post(url,headers,data)
                    print(r.json())





    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2017-10-19 04:17 , Processed in 0.186908 second(s), 25 queries .

    Powered by Discuz! X3.2

    © 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表