Sto scrivendo un CUIT (Coded UI Test) e sto sostituendo le variabili con i dati recuperati da un csv.
Esempio:
this.UIMap.IDBParams.UITboxFsEditText = TestContext.DataRow["num_fs"].ToString();
this.UIMap.IDBParams.UIArmGlCheckBoxChecked = Convert.ToBoolean(TestContext.DataRow["arm_gl"]);
Ma devo definire oltre 100 variabili .
Il mio concetto di come implementare una tabella di hash qui è:
-
All'avvio recupera tutte le variabili su ciascun metodo di prova e crea una nuova HashMap con le variabili come chiave. Es:
{ this.UIMap.IDBParams.UITboxFsEditText : , this.UIMap.IDBParams.UIArmGlCheckBoxChecked : , } //indented just for visual clarity
-
Recupera le colonne csv e assegnale come valore per ogni chiave. Es:
{ this.UIMap.IDBParams.UITboxFsEditText : TestContext.DataRow["num_fs"].ToString() , this.UIMap.IDBParams.UIArmGlCheckBoxChecked : Convert.ToBoolean(TestContext.DataRow["arm_gl"]) , } //indented just for visual clarity
È questo l'approccio migliore?
La lettura di un indice HashTable (es: MyTable['UiTboxFsEditText']
) ha lo stesso effetto della riga this.UIMap.IDBParams.UITboxFsEditText = TestContext.DataRow["num_fs"].ToString();
?