可能なすべてのインストール構成をテストする必要があります。構成は、ネストされた配列を含む場合があるディクショナリ配列に保持されます。
構成情報のサンプルを次に示します (実際の構成はもっと長くなります)。
config = {'database': 'sqlite',
'useExisting': False,
'userCredentials': {'authType': 'windows',
'user': r'.\Testing',
'password': 'testing'
}
}
の場合database
、オプションは['sqlite','mysql','oracle']
、および のuseExisting
場合、オプションは[True, False]
です。それらのすべての順列を通過する方法を理解できます。
しかし、userCredentials
の場合、オプションはまったく異なる場合があります。の場合、追加のパラメーターが必要ですauthType
。database
ループしてすべての有効な組み合わせを作成する関数を作成できますが、それらを結合するにはどうすればよいですか? または、構成を生成するより良い方法はありますか?
のuserCredentials
設定も異なる場合があります。たとえば、testing1 と testing2 という 2 つのユーザー アカウントがあります。両方のユーザー アカウントでテストを実行する必要があります。できればすべての可能な構成でテストを実行する必要があります。このようにネストされている場合、すべての構成を再帰的に生成する方法を理解するのに苦労しています。