What C# data store should I use?
<p>I am trying to create a test framework and not sure what is best to use to store test case names and data that will be provided in XML file. For example, I want to test printer functionality so it has constructor, open printer connection, send data to printer, close printer connection.   So the XML would be:</p>

<pre><code>&lt;Printer&gt;
  &lt;TestCaseName&gt;"Printer_Construct"&lt;/TestCaseName&gt;
    &lt;Data1&gt;"Printer1"&lt;/Data1&gt;

  &lt;TestCaseName&gt;"Printer_OpenConnection"&lt;/TestCaseName&gt;
    &lt;Data1&gt;"Printer1"&lt;/Data1&gt;

  &lt;TestCaseName&gt;"Printer_PrintString"&lt;/TestCaseName&gt;
    &lt;Data1&gt;"Printer1"&lt;/Data1&gt;
    &lt;Data2&gt;"Printing my string"&lt;/Data2&gt;

  &lt;TestCaseName&gt;"Printer_CloseConnection"&lt;/TestCaseName&gt;
    &lt;Data1&gt;"Printer1"&lt;/Data1&gt;
&lt;/Printer&gt;
</code></pre>

<p>Here is how my test framework wanted to work:</p>

<p>1- when test operator runs the test framework, first it will load all the case names only into listbox1.  It will not load test case data yet.</p>

<p>2- when test operator selects specific test case to run, it will load that test case into listbox2.  So when it loads test case into listbox2, it will display test case name and test data(data1 and data2 as shown in xml struct above).</p>

<p>3- So now that test case in listbox2 is ready to be tested whenever test operator clicks the Run button.</p>

<p>So how can I store test case data?  Should I store these data in memory?  If so, what storing data feature should I use?  If not storing these data in memory, does that means I will have to read the XML every time when accessing to test case data so is it good practice to do that?</p>

<p>thanks.</p>
