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 翻译软件,支持划词翻译、截图翻译,以及输入翻译,包含多个翻译源,你可以按照自己的使...