<html>
<head>
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<br>
<br>
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<table>
<tbody>
<tr>
<td class="postcell">
<div>
<div class="post-text" itemprop="description">
<p>i am new to python and just now started developing an
linux application automation.</p>
<p>scenario i am trying is</p>
<p>thread.py --- will invoke all primary device threads
and load test from testcase</p>
<p>admincase.py --- hold my tests for the case..</p>
<p>what i am unable to do is i want to pass certain
objects from thread.py to admincase.py when loading
the test. how do i do that..</p>
<p>object which i am tryin to pass is (<strong>EppQueue</strong>)</p>
<p>thread.py code</p>
<pre class="default prettyprint"><code><span class="kwd">import</span><span class="pln"> threading
</span><span class="kwd">import</span><span class="pln"> sys
</span><span class="kwd">import</span><span class="pln"> time
</span><span class="kwd">import</span><span class="pln"> logging
</span><span class="kwd">import</span><span class="pln"> os
</span><span class="kwd">import</span><span class="pln"> </span><span class="typ">Queue</span><span class="pln">
</span><span class="kwd">from</span><span class="pln"> EPP </span><span class="kwd">import</span><span class="pln"> EPP
</span><span class="kwd">import</span><span class="pln"> ldtp
</span><span class="kwd">import</span><span class="pln"> ldtputils
</span><span class="kwd">from</span><span class="pln"> functions </span><span class="kwd">import</span><span class="pln"> functions
</span><span class="kwd">from</span><span class="pln"> admincases </span><span class="kwd">import</span><span class="pln"> admincases
</span><span class="kwd">import</span><span class="pln"> unittest
</span><span class="com">#logging.basicConfig(level=logging.DEBUG,</span><span class="pln">
</span><span class="com"># format='(%(threadName)-10s) %(message)s',</span><span class="pln">
</span><span class="com"># )</span><span class="pln">
</span><span class="kwd">class</span><span class="pln"> inittest</span><span class="pun">(</span><span class="pln">unittest</span><span class="pun">.</span><span class="typ">TestCase</span><span class="pun">):</span><span class="pln">
</span><span class="kwd">global</span><span class="pln"> fun
</span><span class="kwd">global</span><span class="pln"> </span><span class="typ">EppQueue</span><span class="pln">
</span><span class="kwd">global</span><span class="pln"> window_name
</span><span class="kwd">def</span><span class="pln"> cleanup</span><span class="pun">(</span><span class="pln">epp_port</span><span class="pun">):</span><span class="pln">
</span><span class="kwd">if</span><span class="pln"> os</span><span class="pun">.</span><span class="pln">path</span><span class="pun">.</span><span class="pln">exists</span><span class="pun">(</span><span class="pln">epp_port</span><span class="pun">):</span><span class="pln">
os</span><span class="pun">.</span><span class="pln">unlink</span><span class="pun">(</span><span class="pln">epp_port</span><span class="pun">)</span><span class="pln">
</span><span class="kwd">def</span><span class="pln"> start_threads</span><span class="pun">(</span><span class="typ">EppQueue</span><span class="pun">,</span><span class="pln">server_ip</span><span class="pun">,</span><span class="pln">epp_port</span><span class="pun">):</span><span class="pln">
epp </span><span class="pun">=</span><span class="pln"> EPP
EPP1 </span><span class="pun">=</span><span class="pln"> threading</span><span class="pun">.</span><span class="typ">Thread</span><span class="pun">(</span><span class="pln">name</span><span class="pun">=</span><span class="str">'EPP'</span><span class="pun">,</span><span class="pln"> target</span><span class="pun">=</span><span class="pln">epp</span><span class="pun">,</span><span class="pln"> args</span><span class="pun">=(</span><span class="pln">server_ip</span><span class="pun">,</span><span class="lit">54321</span><span class="pun">,</span><span class="pln">epp_port</span><span class="pun">,</span><span class="typ">EppQueue</span><span class="pun">,))</span><span class="pln">
EPP1</span><span class="pun">.</span><span class="pln">setDaemon</span><span class="pun">(</span><span class="kwd">True</span><span class="pun">)</span><span class="pln">
EPP1</span><span class="pun">.</span><span class="pln">start</span><span class="pun">()</span><span class="pln">
</span><span class="kwd">return</span><span class="pln"> epp
fun </span><span class="pun">=</span><span class="pln"> functions</span><span class="pun">()</span><span class="pln">
</span><span class="typ">EppQueue</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> </span><span class="typ">Queue</span><span class="pun">.</span><span class="typ">Queue</span><span class="pun">(</span><span class="lit">1</span><span class="pun">)</span><span class="pln">
server_ip </span><span class="pun">=</span><span class="str">'192.168.10.125'</span><span class="pln">
epp_port</span><span class="pun">=</span><span class="str">'/dev/ttyS17'</span><span class="pln">
</span><span class="kwd">print</span><span class="pln"> </span><span class="str">"Starting"</span><span class="pln">
cleanup</span><span class="pun">(</span><span class="pln">epp_port</span><span class="pun">)</span><span class="pln">
</span><span class="kwd">print</span><span class="pln"> </span><span class="str">"Clean up Over"</span><span class="pln">
epp </span><span class="pun">=</span><span class="pln"> start_threads</span><span class="pun">(</span><span class="typ">EppQueue</span><span class="pun">,</span><span class="pln">server_ip</span><span class="pun">,</span><span class="pln">epp_port</span><span class="pun">)</span><span class="pln">
raw_input</span><span class="pun">(</span><span class="str">"###### Please Start the main appilcation in the ATM and hit a KEY to continue ############"</span><span class="pun">)</span><span class="pln">
check </span><span class="pun">=</span><span class="pln"> </span><span class="lit">0</span><span class="pln">
</span><span class="kwd">while</span><span class="pln"> check </span><span class="pun">==</span><span class="pln"> </span><span class="lit">0</span><span class="pun">:</span><span class="pln">
window_name </span><span class="pun">=</span><span class="pln"> fun</span><span class="pun">.</span><span class="pln">start_up_verify</span><span class="pun">(</span><span class="str">'atm_main_app'</span><span class="pun">)</span><span class="pln">
</span><span class="kwd">if</span><span class="pln"> any</span><span class="pun">(</span><span class="pln">window_name</span><span class="pun">):</span><span class="pln">
check </span><span class="pun">=</span><span class="pln"> </span><span class="lit">1</span><span class="pln">
</span><span class="kwd">else</span><span class="pun">:</span><span class="pln">
check </span><span class="pun">=</span><span class="pln"> </span><span class="lit">0</span><span class="pln">
</span><span class="kwd">if</span><span class="pln"> </span><span class="kwd">not</span><span class="pln"> any</span><span class="pun">(</span><span class="pln">window_name</span><span class="pun">):</span><span class="pln">
</span><span class="kwd">print</span><span class="pln"> </span><span class="str">"Please start the application and run the test"</span><span class="pln">
sys</span><span class="pun">.</span><span class="kwd">exit</span><span class="pun">(</span><span class="lit">0</span><span class="pun">)</span><span class="pln">
</span><span class="kwd">else</span><span class="pun">:</span><span class="pln">
</span><span class="kwd">print</span><span class="pln"> window_name
</span><span class="kwd">print</span><span class="pln"> </span><span class="str">"SYSTEM IS READY TO PERFORM TEST"</span><span class="pln">
raw_input</span><span class="pun">(</span><span class="str">"###### HIT ANY KEY TO START UNIT TEST ############"</span><span class="pun">)</span><span class="pln">
raw_input</span><span class="pun">(</span><span class="str">"kkk"</span><span class="pun">)</span><span class="pln">
test </span><span class="pun">=</span><span class="pln"> unittest</span><span class="pun">.</span><span class="pln">defaultTestLoader</span><span class="pun">.</span><span class="pln">loadTestsFromName</span><span class="pun">(</span><span class="str">"admincases"</span><span class="pun">)</span><span class="pln">
unittest</span><span class="pun">.</span><span class="typ">TextTestRunner</span><span class="pun">(</span><span class="pln">verbosity</span><span class="pun">=</span><span class="lit">2</span><span class="pun">).</span><span class="pln">run</span><span class="pun">(</span><span class="pln">test</span><span class="pun">)</span><span class="pln">
raw_input</span><span class="pun">(</span><span class="str">"keyy"</span><span class="pun">)</span><span class="pln">
</span><span class="kwd">print</span><span class="pln"> </span><span class="str">"final"</span><span class="pln">
</span></code></pre>
<p>admincase.py code</p>
<pre class="default prettyprint"><code><span class="kwd">import</span><span class="pln"> unittest
</span><span class="kwd">from</span><span class="pln"> functions </span><span class="kwd">import</span><span class="pln"> functions
</span><span class="kwd">import</span><span class="pln"> time
</span><span class="kwd">import</span><span class="pln"> </span><span class="typ">Queue</span><span class="pln">
</span><span class="kwd">class</span><span class="pln"> admincases</span><span class="pun">(</span><span class="pln">unittest</span><span class="pun">.</span><span class="typ">TestCase</span><span class="pun">):</span><span class="pln">
</span><span class="kwd">global</span><span class="pln"> fun
</span><span class="kwd">global</span><span class="pln"> </span><span class="typ">EppQueue</span><span class="pln">
</span><span class="kwd">global</span><span class="pln"> window_name
</span><span class="kwd">def</span><span class="pln"> test_case_1</span><span class="pun">(</span><span class="kwd">self</span><span class="pun">):</span><span class="pln">
</span><span class="kwd">print</span><span class="pln"> </span><span class="str">"test case 1"</span><span class="pln">
window_name </span><span class="pun">=</span><span class="pln"> </span><span class="str">'frmatm_main_app'</span><span class="pln">
fun</span><span class="pun">.</span><span class="pln">send_queue</span><span class="pun">(</span><span class="kwd">self</span><span class="pun">.</span><span class="typ">EppQueue</span><span class="pun">,</span><span class="str">"send_keys,&&&&&"</span><span class="pun">)</span><span class="pln">
fun</span><span class="pun">.</span><span class="pln">verify_screen</span><span class="pun">(</span><span class="pln">window_name</span><span class="pun">,</span><span class="str">"ico0"</span><span class="pun">)</span><span class="pln">
fun</span><span class="pun">.</span><span class="pln">send_queue</span><span class="pun">(</span><span class="kwd">self</span><span class="pun">.</span><span class="typ">EppQueue</span><span class="pun">,</span><span class="str">"send_keys,C"</span><span class="pun">)</span><span class="pln">
fun</span><span class="pun">.</span><span class="pln">verify_screen</span><span class="pun">(</span><span class="pln">window_name</span><span class="pun">,</span><span class="str">"ManagementFunctions"</span><span class="pun">)</span><span class="pln">
fun</span><span class="pun">.</span><span class="pln">send_queue</span><span class="pun">(</span><span class="kwd">self</span><span class="pun">.</span><span class="typ">EppQueue</span><span class="pun">,</span><span class="str">"send_keys,001234"</span><span class="pun">)</span><span class="pln">
fun</span><span class="pun">.</span><span class="pln">verify_screen</span><span class="pun">(</span><span class="pln">window_name</span><span class="pun">,</span><span class="str">"MainMenu"</span><span class="pun">)</span><span class="pln">
fun</span><span class="pun">.</span><span class="pln">send_queue</span><span class="pun">(</span><span class="kwd">self</span><span class="pun">.</span><span class="typ">EppQueue</span><span class="pun">,</span><span class="str">"send_keys,1"</span><span class="pun">)</span><span class="pln">
fun</span><span class="pun">.</span><span class="pln">verify_screen</span><span class="pun">(</span><span class="pln">window_name</span><span class="pun">,</span><span class="str">"Diagnostics"</span><span class="pun">)</span><span class="pln">
fun</span><span class="pun">.</span><span class="pln">send_queue</span><span class="pun">(</span><span class="kwd">self</span><span class="pun">.</span><span class="typ">EppQueue</span><span class="pun">,</span><span class="str">"send_keys,1"</span><span class="pun">)</span><span class="pln">
fun</span><span class="pun">.</span><span class="pln">verify_screen</span><span class="pun">(</span><span class="pln">window_name</span><span class="pun">,</span><span class="str">"TerminalStatus"</span><span class="pun">)</span><span class="pln">
fun</span><span class="pun">.</span><span class="pln">send_queue</span><span class="pun">(</span><span class="kwd">self</span><span class="pun">.</span><span class="typ">EppQueue</span><span class="pun">,</span><span class="str">"send_keys,2"</span><span class="pun">)</span><span class="pln">
time</span><span class="pun">.</span><span class="pln">sleep</span><span class="pun">(</span><span class="lit">10</span><span class="pun">)</span><span class="pln">
fun</span><span class="pun">.</span><span class="pln">send_queue</span><span class="pun">(</span><span class="kwd">self</span><span class="pun">.</span><span class="typ">EppQueue</span><span class="pun">,</span><span class="str">"send_keys,####****"</span><span class="pun">)</span><span class="pln">
fun </span><span class="pun">=</span><span class="pln"> functions</span><span class="pun">()</span><span class="pln">
</span><span class="com">#EppQueue = Queue.Queue(1)</span><span class="pln">
</span></code></pre>
<p>Need some assistance on this... </p>
</div>
</div>
</td>
</tr>
</tbody>
</table>
<pre class="moz-signature" cols="72">--
Regards
Venkat.S</pre>
</body>
</html>