import pytest
from allpairspy import AllPairs
from collections import OrderedDict
parameters = [
["男","女"],
["一年级", "二年级", "三年级", "四年级", "五年级"],
["8岁以下", "8-10岁", "10-13岁"]
]
print("PAIRWISE:")
for i, pairs in enumerate(AllPairs(parameters)):
print("用例编号{:2d}: {}".format(i, pairs))
print("#######################过滤因素之间值的组合是无效###################################")
def is_valid_combination(row):
n = len(row)
# print(row)
# print(n)
# 设置过滤条件
if n > 2:
# 一年级 不能匹配 10-13岁
if row[1] in ["一年级","二年级"] and "10-13岁" == row[2]:
return False
return True
parameters = [
["男","女"],
["一年级", "二年级", "三年级", "四年级", "五年级"],
["8岁以下", "8-10岁", "10-13岁"]
]
print("PAIRWISE:")
for i, pairs in enumerate(AllPairs(parameters,filter_func=is_valid_combination)):
print("用例编号{:2d}: {}".format(i, pairs))
print("##############################OrderedDict演示#####################################")
parameters = OrderedDict({
"性别": ["男", "女"],
"年级": ["一年级", "二年级", "三年级", "四年级", "五年级"],
"年龄区间": ["8岁以下", "8-10岁", "10-13岁"]
})
print("PAIRWISE:")
for i, pairs in enumerate(AllPairs(parameters,filter_func=is_valid_combination)):
print("用例编号{:2d}: {}".format(i, pairs))
print("#################################################################")
def function_to_be_tested(sex, grade, age):
if grade == "一年级" and age == "10-13岁":
return False
return True
@pytest.mark.isms
class Test_Parameterized(object):
@pytest.mark.parametrize(["sex", "grade", "age"], [
value_list for value_list in AllPairs([
[u"男", u"女"],
["一年级", "二年级", "三年级", "四年级", "五年级"],
["8岁以下", "8-10岁", "10-13岁"]
])
])
def test(self, sex, grade, age):
assert function_to_be_tested(sex, grade, age)
allpairspy一款高效的正交实验法生成用例工具
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 官网:http://www.satisfice.com/tools.shtml转自:https://jingyan...
- 「Bob」是一款 开源的Mac 翻译软件,支持划词翻译、截图翻译,以及输入翻译,包含多个翻译源,你可以按照自己的使...