测试用例:多条件下编写,懒人妙用itertools

**简介:**Python中的 itertools 模块在某些存在多条件的用例场景,可以通过该模块进行用例编写。

更多详细使用场景
Python:常见排列组合问题处理
Python:xlrd和xlwt模块操作Excel表格

最终效果**在这里插入图片描述

案例:多条件下提现功能用例编写。

# -*-coding:utf-8-*-
import itertools
import xlwt
import datetime

f = xlwt.Workbook()  # 创建工作簿
sheet1 = f.add_sheet(u'sheet1', cell_overwrite_ok=True)  # 创建sheet1

case = ["用例名称"]
case_id = ["ID"]
case_type = ["用例类型"]
case_user = ["创建人"]
case_create_time = ["创建时间"]

user = ["个人用户", "对公用户", "特殊用户"]
scene = ["正常时间", "系统维护不可用时间"]
card = ["有效卡", "未绑卡", "卡挂失", "冻结卡"]
count = ["超出当日次数", "正常次数范围"]
withdraw = ["提现金额大于余额", "余额为零", "提现金额大于单笔最大", "提现金额小于单笔最小", "提现金额小于最小提现金额"]
conditions = [user, scene, card, count, withdraw]
r = itertools.product(*conditions)  # 拆包

number = 0
for i in r:
    case_name = " - ".join(i)
    case.append(case_name)

    case_id.append("{}".format(str(1000000 + number)))
    case_type.append("功能用例")
    case_user.append("Tom")
    time = str(datetime.datetime.now())[:19]
    case_create_time.append("{}".format(time))

    number += 1

for i, v in enumerate(case):
    sheet1.write(i, 0, case_id[i])
    sheet1.write(i, 1, v)  # i表示行数, 1表示第2列。v是插入的值
    sheet1.write(i, 2, case_type[i])
    sheet1.write(i, 3, case_user[i])
    sheet1.write(i, 4, case_create_time[i])

f.save('text.xls')  # 保存文件

微信公众号:玩转测试开发
欢迎关注,共同进步,谢谢!

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值