以下是一个可能的实现方式:

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 方法来生成所有可能的测试用例。每个测试用例都是一个字典,其中键是货币代码,值是需要转换的金额。我们可以将每个测试用例传递给我们的货币转换函数,然后比较结果来确定是否正确转换了货币

用allpairs生成货币转换测试用例的类要怎样写

原文地址: http://www.cveoy.top/t/topic/hnR1 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录