用allpairs生成货币转换测试用例的类要怎样写
以下是一个可能的实现方式:
import allpairs
class CurrencyConversionTestGenerator:
def __init__(self, currencies):
self.currencies = currencies
def generate_test_cases(self):
parameters = []
for currency in self.currencies:
parameters.append(list(currency.keys())[0])
values = []
for currency in self.currencies:
values.append(list(currency.values())[0])
pairs = allpairs.all_pairs(parameters)
test_cases = []
for pair in pairs:
test_case = {}
for i in range(len(pair)):
test_case[parameters[i]] = values[i][pair[i]]
test_cases.append(test_case)
return test_cases
在这个实现中,我们使用了 allpairs 库来生成所有可能的参数组合。我们的 CurrencyConversionTestGenerator 类接受一个列表,其中包含了所有需要测试的货币转换。每个货币转换都是一个字典,其中键是货币代码,值是该货币与其他货币的汇率。例如:
currencies = [
{'USD': [1.0, 0.85, 0.77]},
{'EUR': [1.18, 1.0, 0.91]},
{'GBP': [1.30, 1.11, 1.0]},
]
这个列表包含了三种货币(美元、欧元和英镑),每种货币与其他两种货币的汇率。我们将这个列表传递给 CurrencyConversionTestGenerator,然后调用 generate_test_cases 方法来生成所有可能的测试用例。每个测试用例都是一个字典,其中键是货币代码,值是需要转换的金额。我们可以将每个测试用例传递给我们的货币转换函数,然后比较结果来确定是否正确转换了货币
原文地址: http://www.cveoy.top/t/topic/hnR1 著作权归作者所有。请勿转载和采集!