Re: [TFUI] Re: GWT and Fit (Was: Test-driving ASP.NET)

ketan kalia <ketan_kalia-/[email protected]> Fri, 9 Nov 2007 00:12:30 +0530 (IST)
Newsgroups gmane.comp.programming.test-first-user-interfaces
Message-ID <[email protected]>
--S-xNzloXrDoMKkakEMnZhSnfasvzK6kMbCfzyzK
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

Hi,
Please try WebAii from www.artoftest.com
I have used it and it is really good.It can be run inside the NUnit framework,supports AJAX testing.
And it can be integrated into build process too.

Take care
Ketan 

----- Original Message ----
From: Daniel Wellman <wellman-pD6z9c7pN/[email protected]>
To: [email protected]
Sent: Thursday, 8 November, 2007 5:36:08 PM
Subject: [TFUI] Re: GWT and Fit (Was: Test-driving ASP.NET)









  


    
            GWT code looks like regular Java code except in a few conditions: it

can inline native JavaScript within your Java source, or it can use a

compile-time deferred binding technique to pick code based on your

browser type (Firefox, IE, etc.).  You can write regular Java JUnit or

Fit tests for your application, but as soon as your code invokes

Javascript (instantiating any widget does this) or uses the deferred

binding, you need to run your code in a browser.



GWT ships with a modified browser that can essentially run your GWT

Java code in a JVM instead of JavaScript.  Whenever you need to test

code that needs a browser, Google provides an extension to TestCase

called GWTTestCase.  This class essentially starts up a hidden web

browser and runs your test case in this browser -- as Java or

Javascript.  This works very well, but it is very slow - it takes

several seconds to run a test as opposed to milliseconds.



For my project, I've used JUnit tests with JMock for the presenter

layers above the UI, and when I really wanted to test actual widget or

JavaScript code (JSON parsing is another case that needs a browser),

used GWTTestCase.  I haven't used Fit tests, but I think some folks on

the GWT mailing list may have; the only issue would be getting that

headless browser up when your code required it.



Dan



--- In TestFirstUserInterf aces@yahoogroups .com, Rick Mugridge

<rick@...> wrote:

>

> Hi Dan,

> 

> No, I haven't, but I've been keen to try out GWT for some time. I

really 

> like the way they manage Javascript. I've been waiting for the widget 

> set to become more comprehensive - perhaps it is now?

> 

> Now that you mention it, I can see that hooking into the Java-based 

> browser runtime is the interesting bit. Is the source available for 

> that? Is there a useful testing api?

> 

> How have you approached it yourself?

> 

> Cheers, Rick

> 

> Daniel Wellman wrote:

> >

> > Hi Rick,

> >

> > Have you written Fit tests for GWT? If so, did your tests require one

> > of the fake hosted mode browsers to run to handle widgets or deferred

> > binding?

> >

> > I'm working on a GWT project right now and am interested to share

> > experience stories with other folks.

> >

> > Cheers,

> > Dan

> >

> > --- In TestFirstUserInterf aces@yahoogroups .com 

> > <mailto:TestFirstUs erInterfaces% 40yahoogroups. com>, Rick Mugridge

> > <rick@> wrote:

> > > PS, if GWT was used, the Java code intended for translation to

> > > Javascript could be tested with Fit

> >

> >  

> 

> 

> [Non-text portions of this message have been removed]

>





    
  

    
    




<!--

#ygrp-mkp{
border:1px solid #d8d8d8;font-family:Arial;margin:14px 0px;padding:0px 14px;}
#ygrp-mkp hr{
border:1px solid #d8d8d8;}
#ygrp-mkp #hd{
color:#628c2a;font-size:85%;font-weight:bold;line-height:122%;margin:10px 0px;}
#ygrp-mkp #ads{
margin-bottom:10px;}
#ygrp-mkp .ad{
padding:0 0;}
#ygrp-mkp .ad a{
color:#0000ff;text-decoration:none;}
-->



<!--

#ygrp-sponsor #ygrp-lc{
font-family:Arial;}
#ygrp-sponsor #ygrp-lc #hd{
margin:10px 0px;font-weight:bold;font-size:78%;line-height:122%;}
#ygrp-sponsor #ygrp-lc .ad{
margin-bottom:10px;padding:0 0;}
-->



<!--

#ygrp-mlmsg {font-size:13px;font-family:arial, helvetica, clean, sans-serif;}
#ygrp-mlmsg table {font-size:inherit;font:100%;}
#ygrp-mlmsg select, input, textarea {font:99% arial, helvetica, clean, sans-serif;}
#ygrp-mlmsg pre, code {font:115% monospace;}
#ygrp-mlmsg * {line-height:1.22em;}
#ygrp-text{
font-family:Georgia;
}
#ygrp-text p{
margin:0 0 1em 0;}
#ygrp-tpmsgs{
font-family:Arial;
clear:both;}
#ygrp-vitnav{
padding-top:10px;font-family:Verdana;font-size:77%;margin:0;}
#ygrp-vitnav a{
padding:0 1px;}
#ygrp-actbar{
clear:both;margin:25px 0;white-space:nowrap;color:#666;text-align:right;}
#ygrp-actbar .left{
float:left;white-space:nowrap;}
.bld{font-weight:bold;}
#ygrp-grft{
font-family:Verdana;font-size:77%;padding:15px 0;}
#ygrp-ft{
font-family:verdana;font-size:77%;border-top:1px solid #666;
padding:5px 0;
}
#ygrp-mlmsg #logo{
padding-bottom:10px;}

#ygrp-vital{
background-color:#e0ecee;margin-bottom:20px;padding:2px 0 8px 8px;}
#ygrp-vital #vithd{
font-size:77%;font-family:Verdana;font-weight:bold;color:#333;text-transform:uppercase;}
#ygrp-vital ul{
padding:0;margin:2px 0;}
#ygrp-vital ul li{
list-style-type:none;clear:both;border:1px solid #e0ecee;
}
#ygrp-vital ul li .ct{
font-weight:bold;color:#ff7900;float:right;width:2em;text-align:right;padding-right:.5em;}
#ygrp-vital ul li .cat{
font-weight:bold;}
#ygrp-vital a{
text-decoration:none;}

#ygrp-vital a:hover{
text-decoration:underline;}

#ygrp-sponsor #hd{
color:#999;font-size:77%;}
#ygrp-sponsor #ov{
padding:6px 13px;background-color:#e0ecee;margin-bottom:20px;}
#ygrp-sponsor #ov ul{
padding:0 0 0 8px;margin:0;}
#ygrp-sponsor #ov li{
list-style-type:square;padding:6px 0;font-size:77%;}
#ygrp-sponsor #ov li a{
text-decoration:none;font-size:130%;}
#ygrp-sponsor #nc{
background-color:#eee;margin-bottom:20px;padding:0 8px;}
#ygrp-sponsor .ad{
padding:8px 0;}
#ygrp-sponsor .ad #hd1{
font-family:Arial;font-weight:bold;color:#628c2a;font-size:100%;line-height:122%;}
#ygrp-sponsor .ad a{
text-decoration:none;}
#ygrp-sponsor .ad a:hover{
text-decoration:underline;}
#ygrp-sponsor .ad p{
margin:0;}
o{font-size:0;}
.MsoNormal{
margin:0 0 0 0;}
#ygrp-text tt{
font-size:120%;}
blockquote{margin:0 0 0 4px;}
.replbq{margin:4;}
-->








      Now you can chat without downloading messenger. Go to http://in.messenger.yahoo.com/webmessengerpromo.php

[Non-text portions of this message have been removed]


--S-xNzloXrDoMKkakEMnZhSnfasvzK6kMbCfzyzK
Content-Type: text/html; charset=US-ASCII
Content-Transfer-Encoding: 7bit


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
</head>




<body style="background-color: #ffffff;">

<!--~-|**|PrettyHtmlStartT|**|-~-->
<div id="ygrp-mlmsg" style="width:655px; position:relative;">
  <div id="ygrp-msg" style="width: 490px; padding: 0 15px 0 0; float:left;  z-index:1;">
<!--~-|**|PrettyHtmlEndT|**|-~-->

    <div id="ygrp-text">
            <p>Hi,<br>
Please try WebAii from www.artoftest.<wbr>com<br>
I have used it and it is really good.It can be run inside the NUnit framework,supports AJAX testing.<br>
And it can be integrated into build process too.<br>
<br>
Take care<br>
Ketan <br>
<br>
----- Original Message ----<br>
From: Daniel Wellman &lt;<a href="mailto:wellman%40edgetolife.com">wellman@edgetolife.<wbr>com</a>&gt;<br>
To: <a href="mailto:TestFirstUserInterfaces%40yahoogroups.com">TestFirstUserInterf<wbr>aces@yahoogroups<wbr>.com</a><br>
Sent: Thursday, 8 November, 2007 5:36:08 PM<br>
Subject: [TFUI] Re: GWT and Fit (Was: Test-driving ASP.NET)<br>
<br>
GWT code looks like regular Java code except in a few conditions: it<br>
<br>
can inline native JavaScript within your Java source, or it can use a<br>
<br>
compile-time deferred binding technique to pick code based on your<br>
<br>
browser type (Firefox, IE, etc.).  You can write regular Java JUnit or<br>
<br>
Fit tests for your application, but as soon as your code invokes<br>
<br>
Javascript (instantiating any widget does this) or uses the deferred<br>
<br>
binding, you need to run your code in a browser.<br>
<br>
GWT ships with a modified browser that can essentially run your GWT<br>
<br>
Java code in a JVM instead of JavaScript.  Whenever you need to test<br>
<br>
code that needs a browser, Google provides an extension to TestCase<br>
<br>
called GWTTestCase.  This class essentially starts up a hidden web<br>
<br>
browser and runs your test case in this browser -- as Java or<br>
<br>
Javascript.  This works very well, but it is very slow - it takes<br>
<br>
several seconds to run a test as opposed to milliseconds.<br>
<br>
For my project, I've used JUnit tests with JMock for the presenter<br>
<br>
layers above the UI, and when I really wanted to test actual widget or<br>
<br>
JavaScript code (JSON parsing is another case that needs a browser),<br>
<br>
used GWTTestCase.  I haven't used Fit tests, but I think some folks on<br>
<br>
the GWT mailing list may have; the only issue would be getting that<br>
<br>
headless browser up when your code required it.<br>
<br>
Dan<br>
<br>
--- In TestFirstUserInterf aces@yahoogroups .com, Rick Mugridge<br>
<br>
&lt;rick@...&gt; wrote:<br>
<br>
&gt;<br>
<br>
&gt; Hi Dan,<br>
<br>
&gt; <br>
<br>
&gt; No, I haven't, but I've been keen to try out GWT for some time. I<br>
<br>
really <br>
<br>
&gt; like the way they manage Javascript. I've been waiting for the widget <br>
<br>
&gt; set to become more comprehensive - perhaps it is now?<br>
<br>
&gt; <br>
<br>
&gt; Now that you mention it, I can see that hooking into the Java-based <br>
<br>
&gt; browser runtime is the interesting bit. Is the source available for <br>
<br>
&gt; that? Is there a useful testing api?<br>
<br>
&gt; <br>
<br>
&gt; How have you approached it yourself?<br>
<br>
&gt; <br>
<br>
&gt; Cheers, Rick<br>
<br>
&gt; <br>
<br>
&gt; Daniel Wellman wrote:<br>
<br>
&gt; &gt;<br>
<br>
&gt; &gt; Hi Rick,<br>
<br>
&gt; &gt;<br>
<br>
&gt; &gt; Have you written Fit tests for GWT? If so, did your tests require one<br>
<br>
&gt; &gt; of the fake hosted mode browsers to run to handle widgets or deferred<br>
<br>
&gt; &gt; binding?<br>
<br>
&gt; &gt;<br>
<br>
&gt; &gt; I'm working on a GWT project right now and am interested to share<br>
<br>
&gt; &gt; experience stories with other folks.<br>
<br>
&gt; &gt;<br>
<br>
&gt; &gt; Cheers,<br>
<br>
&gt; &gt; Dan<br>
<br>
&gt; &gt;<br>
<br>
&gt; &gt; --- In TestFirstUserInterf aces@yahoogroups .com <br>
<br>
&gt; &gt; &lt;mailto:TestFirstUs erInterfaces% 40yahoogroups. com&gt;, Rick Mugridge<br>
<br>
&gt; &gt; &lt;rick@&gt; wrote:<br>
<br>
&gt; &gt; &gt; PS, if GWT was used, the Java code intended for translation to<br>
<br>
&gt; &gt; &gt; Javascript could be tested with Fit<br>
<br>
&gt; &gt;<br>
<br>
&gt; &gt;  <br>
<br>
&gt; <br>
<br>
&gt; <br>
<br>
&gt; [Non-text portions of this message have been removed]<br>
<br>
&gt;<br>
<br>
&lt;!--<br>
<br>
#ygrp-mkp{<br>
border:1px solid #d8d8d8;font-<wbr>family:Arial;<wbr>margin:14px 0px;padding:<wbr>0px 14px;}<br>
#ygrp-mkp hr{<br>
border:1px solid #d8d8d8;}<br>
#ygrp-mkp #hd{<br>
color:#628c2a;<wbr>font-size:<wbr>85%;font-<wbr>weight:bold;<wbr>line-height:<wbr>122%;margin:<wbr>10px 0px;}<br>
#ygrp-mkp #ads{<br>
margin-bottom:<wbr>10px;}<br>
#ygrp-mkp .ad{<br>
padding:0 0;}<br>
#ygrp-mkp .ad a{<br>
color:#0000ff;<wbr>text-decoration:<wbr>none;}<br>
--&gt;<br>
<br>
&lt;!--<br>
<br>
#ygrp-sponsor #ygrp-lc{<br>
font-family:<wbr>Arial;}<br>
#ygrp-sponsor #ygrp-lc #hd{<br>
margin:10px 0px;font-weight:<wbr>bold;font-<wbr>size:78%;<wbr>line-height:<wbr>122%;}<br>
#ygrp-sponsor #ygrp-lc .ad{<br>
margin-bottom:<wbr>10px;padding:<wbr>0 0;}<br>
--&gt;<br>
<br>
&lt;!--<br>
<br>
#ygrp-mlmsg {font-size:13px;<wbr>font-family:<wbr>arial, helvetica, clean, sans-serif;}<br>
#ygrp-mlmsg table {font-size:inherit;<wbr>font:100%<wbr>;}<br>
#ygrp-mlmsg select, input, textarea {font:99% arial, helvetica, clean, sans-serif;}<br>
#ygrp-mlmsg pre, code {font:115% monospace;}<br>
#ygrp-mlmsg * {line-height:<wbr>1.22em;}<br>
#ygrp-text{<br>
font-family:<wbr>Georgia;<br>
}<br>
#ygrp-text p{<br>
margin:0 0 1em 0;}<br>
#ygrp-tpmsgs{<br>
font-family:<wbr>Arial;<br>
clear:both;}<br>
#ygrp-vitnav{<br>
padding-top:<wbr>10px;font-<wbr>family:Verdana;<wbr>font-size:<wbr>77%;margin:<wbr>0;}<br>
#ygrp-vitnav a{<br>
padding:0 1px;}<br>
#ygrp-actbar{<br>
clear:both;margin:<wbr>25px 0;white-space:<wbr>nowrap;color:<wbr>#666;text-<wbr>align:right;<wbr>}<br>
#ygrp-actbar .left{<br>
float:left;white-<wbr>space:nowrap;<wbr>}<br>
.bld{font-weight:<wbr>bold;}<br>
#ygrp-grft{<br>
font-family:<wbr>Verdana;font-<wbr>size:77%;<wbr>padding:15px 0;}<br>
#ygrp-ft{<br>
font-family:<wbr>verdana;font-<wbr>size:77%;<wbr>border-top:<wbr>1px solid #666;<br>
padding:5px 0;<br>
}<br>
#ygrp-mlmsg #logo{<br>
padding-bottom:<wbr>10px;}<br>
<br>
#ygrp-vital{<br>
background-color:<wbr>#e0ecee;margin-<wbr>bottom:20px;<wbr>padding:2px 0 8px 8px;}<br>
#ygrp-vital #vithd{<br>
font-size:77%<wbr>;font-family:<wbr>Verdana;font-<wbr>weight:bold;<wbr>color:#333;<wbr>text-transform:<wbr>uppercase;<wbr>}<br>
#ygrp-vital ul{<br>
padding:0;margin:<wbr>2px 0;}<br>
#ygrp-vital ul li{<br>
list-style-type:<wbr>none;clear:<wbr>both;border:<wbr>1px solid #e0ecee;<br>
}<br>
#ygrp-vital ul li .ct{<br>
font-weight:<wbr>bold;color:<wbr>#ff7900;float:<wbr>right;width:<wbr>2em;text-<wbr>align:right;<wbr>padding-right:<wbr>.5em;}<br>
#ygrp-vital ul li .cat{<br>
font-weight:<wbr>bold;}<br>
#ygrp-vital a{<br>
text-decoration:<wbr>none;}<br>
<br>
#ygrp-vital a:hover{<br>
text-decoration:<wbr>underline;<wbr>}<br>
<br>
#ygrp-sponsor #hd{<br>
color:#999;font-<wbr>size:77%;<wbr>}<br>
#ygrp-sponsor #ov{<br>
padding:6px 13px;background-<wbr>color:#e0ecee;<wbr>margin-bottom:<wbr>20px;}<br>
#ygrp-sponsor #ov ul{<br>
padding:0 0 0 8px;margin:0;<wbr>}<br>
#ygrp-sponsor #ov li{<br>
list-style-type:<wbr>square;padding:<wbr>6px 0;font-size:<wbr>77%;}<br>
#ygrp-sponsor #ov li a{<br>
text-decoration:<wbr>none;font-<wbr>size:130%<wbr>;}<br>
#ygrp-sponsor #nc{<br>
background-color:<wbr>#eee;margin-<wbr>bottom:20px;<wbr>padding:0 8px;}<br>
#ygrp-sponsor .ad{<br>
padding:8px 0;}<br>
#ygrp-sponsor .ad #hd1{<br>
font-family:<wbr>Arial;font-<wbr>weight:bold;<wbr>color:#628c2a;<wbr>font-size:<wbr>100%;line-<wbr>height:122%<wbr>;}<br>
#ygrp-sponsor .ad a{<br>
text-decoration:<wbr>none;}<br>
#ygrp-sponsor .ad a:hover{<br>
text-decoration:<wbr>underline;<wbr>}<br>
#ygrp-sponsor .ad p{<br>
margin:0;}<br>
o{font-size:<wbr>0;}<br>
.MsoNormal{<br>
margin:0 0 0 0;}<br>
#ygrp-text tt{<br>
font-size:120%<wbr>;}<br>
blockquote{margin:<wbr>0 0 0 4px;}<br>
.replbq{margin:<wbr>4;}<br>
--&gt;<br>
<br>
Now you can chat without downloading messenger. Go to <a href="http://in.messenger.yahoo.com/webmessengerpromo.php">http://in.messenger<wbr>.yahoo.com/<wbr>webmessengerprom<wbr>o.php</a><br>
<br>
[Non-text portions of this message have been removed]<br>
<br>
</p>
    </div>  

    <!--~-|**|PrettyHtmlStart|**|-~-->
    <span width="1" style="color: white;">__._,_.___</span>
    <!-- Start the section with Message In topic -->
    <div id="ygrp-actbar">
              <span class="left">
          <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/message/999;_ylc=X3oDMTMzMjFmaWtwBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BG1zZ0lkAzEwMDUEc2VjA2Z0cgRzbGsDdnRwYwRzdGltZQMxMTk0NTUwMjU4BHRwY0lkAzk5OQ--">
            Messages in this topic          </a> (<span class="bld">0</span>)
        </span>
        <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/post;_ylc=X3oDMTJwcDdsNHZvBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BG1zZ0lkAzEwMDUEc2VjA2Z0cgRzbGsDcnBseQRzdGltZQMxMTk0NTUwMjU4?act=reply&messageNum=1005">
          <span class="bld">
            Reply          </span> (via web post)
        </a>  | 
        <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/post;_ylc=X3oDMTJlczdsanN0BF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA250cGMEc3RpbWUDMTE5NDU1MDI1OA--" class="bld">
          Start a new topic        </a>
          </div> 
    <!-------     Start Nav Bar  ------>
    <!-- |**|begin egp html banner|**| -->
    <div id="ygrp-vitnav">
                <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/messages;_ylc=X3oDMTJlZTNhcmwxBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA21zZ3MEc3RpbWUDMTE5NDU1MDI1OA--">Messages</a>  
            |    <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/files;_ylc=X3oDMTJmc3Z2cGUxBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA2ZpbGVzBHN0aW1lAzExOTQ1NTAyNTg-">Files</a>  
            |    <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/photos;_ylc=X3oDMTJlNGlwbmVlBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA3Bob3QEc3RpbWUDMTE5NDU1MDI1OA--">Photos</a>  
            |    <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/links;_ylc=X3oDMTJmNGM1MzdnBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA2xpbmtzBHN0aW1lAzExOTQ1NTAyNTg-">Links</a>  
            |    <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/database;_ylc=X3oDMTJjZjJvdmxwBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA2RiBHN0aW1lAzExOTQ1NTAyNTg-">Database</a>  
            |    <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/polls;_ylc=X3oDMTJmOXZtMnQ0BF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA3BvbGxzBHN0aW1lAzExOTQ1NTAyNTg-">Polls</a>  
            |    <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/members;_ylc=X3oDMTJlMjg4MWFvBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA21icnMEc3RpbWUDMTE5NDU1MDI1OA--">Members</a>  
            |    <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/calendar;_ylc=X3oDMTJkZXZydDU4BF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA2NhbARzdGltZQMxMTk0NTUwMjU4">Calendar</a>  
    </div>  
    <!-- |**|end egp html banner|**| -->

                <div id="ygrp-grft">
                  

              </div>
    
    <!-- yahoo logo -->
    <!-- |**|begin egp html banner|**| -->
    <div id="ygrp-ft">
      <a href="http://groups.yahoo.com/;_ylc=X3oDMTJkNDl2YmdpBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA2dmcARzdGltZQMxMTk0NTUwMjU4">
      <img src="http://us.i1.yimg.com/us.yimg.com/i/yg/img/logo/ma_grp_160.gif" height="15" width="106" border="0" alt="Yahoo! Groups"></a> <br>
      <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces/join;_ylc=X3oDMTJmdDZlbG91BF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA3N0bmdzBHN0aW1lAzExOTQ1NTAyNTg-">Change settings via the Web</a> (Yahoo! ID required) <br>
      Change settings via email: <a href="mailto:TestFirstUserInterfaces-digest-hHKSG33TihhbjbujkaE4pw@public.gmane.org?subject=Email Delivery: Digest">Switch delivery to Daily Digest</a> | <a href = "mailto:TestFirstUserInterfaces-traditional-hHKSG33TihhbjbujkaE4pw@public.gmane.org?subject=Change Delivery Format: Traditional">Switch format to Traditional</a> <br>

      <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces;_ylc=X3oDMTJkMXRjdTh1BF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwNmdHIEc2xrA2hwZgRzdGltZQMxMTk0NTUwMjU4">
        Visit Your Group 
      </a> |
      <a href="http://docs.yahoo.com/info/terms/">
        Yahoo! Groups Terms of Use      </a> |
      <a href="mailto:TestFirstUserInterfaces-unsubscribe-hHKSG33TihhbjbujkaE4pw@public.gmane.org?subject=">
        Unsubscribe      </a> 
    </div>     <!-- |**|end egp html banner|**| -->
  </div> <!-- ygrp-msg -->

  
  <!-- Sponsor -->
  <!-- |**|begin egp html banner|**| -->
  <div id="ygrp-sponsor" style="width:140px;float: left; clear: none; margin-left: 5px; background:white; margin-bottom:25px ;position:absolute; top:0; right: 0;">
    <!-- Network content -->
    
    <!-- Start vitality -->
    <div id="ygrp-vital">
            <a href="http://groups.yahoo.com/group/TestFirstUserInterfaces;_ylc=X3oDMTJlMWliYThjBF9TAzk3MzU5NzE0BGdycElkAzg3NDQ3MDQEZ3Jwc3BJZAMxNzA1MDA3MjA3BHNlYwN2dGwEc2xrA3ZnaHAEc3RpbWUDMTE5NDU1MDI1OA--">
        Visit Your Group      </a>
    </div> 
              
    <!-- Network content -->
              <div id="nc">
              <div class="ad">
                      <div id="hd1">Yahoo! Finance</div> 
<p><a href="http://us.ard.yahoo.com/SIG=12j74v0rr/M=493064.10729649.11333340.8674578/D=groups/S=1705007207:NC/Y=YAHOO/EXP=1194557458/A=4507179/R=0/SIG=12de4rskk/*http://us.rd.yahoo.com/evt=50284/*http://finance.yahoo.com/personal-finance">It's Now Personal</a></p> 
<p>Guides, news,</p> 
<p>advice & more.</p>                   </div>
                    <div class="ad">
                      <div id="hd1">HDTV Support</div> 
<p><a href="http://us.ard.yahoo.com/SIG=12jcdsrk1/M=493064.10972170.11554072.8674578/D=groups/S=1705007207:NC/Y=YAHOO/EXP=1194557458/A=4706132/R=0/SIG=11f8fj6tf/*http://tech.groups.yahoo.com/group/samsunghd/">The official Samsung</a></p> 
<p>Y! Group for HDTVs</p> 
<p>and devices.</p>                  </div>
                    <div class="ad">
                      <div id="hd1">Ads on Yahoo!</div> 
<p><a href="http://us.ard.yahoo.com/SIG=12jqoblhk/M=493064.10729656.11333347.8674578/D=groups/S=1705007207:NC/Y=YAHOO/EXP=1194557458/A=3848643/R=0/SIG=131q47hek/*http://searchmarketing.yahoo.com/arp/srchv2.php?o=US2005&cmp=Yahoo&ctv=Groups4&s=Y&s2=&s3=&b=50">Learn more now.</a></p> 
<p>Reach customers</p> 
<p>searching for you.</p>                  </div>
          </div>
    
  </div>   <!-- |**|end egp html banner|**| -->
  <div style="clear:both; color: #FFF; font-size:1px;">.</div>
</div>   <img src="http://geo.yahoo.com/serv?s=97359714/grpId=8744704/grpspId=1705007207/msgId=1005/stime=1194550258/nc1=4507179/nc2=4706132/nc3=3848643" width="1" height="1"> <br>

<span  style="color: white;">__,_._,___</span>
<!--~-|**|PrettyHtmlEnd|**|-~-->
</body>
<!--~-|**|PrettyHtmlStart|**|-~-->
<head>
<style type="text/css">
<!--
#ygrp-mkp{
  border: 1px solid #d8d8d8;
  font-family: Arial;
  margin: 14px 0px;
  padding: 0px 14px;
}
#ygrp-mkp hr{
  border: 1px solid #d8d8d8;
}
#ygrp-mkp #hd{
  color: #628c2a;
  font-size: 85%;
  font-weight: bold;
  line-height: 122%;
  margin: 10px 0px;
}
#ygrp-mkp #ads{
  margin-bottom: 10px;
}
#ygrp-mkp .ad{
  padding: 0 0;
}
#ygrp-mkp .ad a{
  color: #0000ff;
  text-decoration: none;
}
-->
</style>
</head>
<head>
<style type="text/css">
<!--
#ygrp-sponsor #ygrp-lc{
  font-family: Arial;
}
#ygrp-sponsor #ygrp-lc #hd{
  margin: 10px 0px;
  font-weight: bold;
  font-size: 78%;
  line-height: 122%;
}
#ygrp-sponsor #ygrp-lc .ad{
  margin-bottom: 10px;
  padding: 0 0;
}
-->
</style>
</head>
<head>
<style type="text/css">
<!--
#ygrp-mlmsg {font-size:13px; font-family: arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;}
#ygrp-mlmsg table {font-size:inherit;font:100%;}
#ygrp-mlmsg select, input, textarea {font:99% arial,helvetica,clean,sans-serif;}
#ygrp-mlmsg pre, code {font:115% monospace;*font-size:100%;}
#ygrp-mlmsg * {line-height:1.22em;}
#ygrp-text{
    font-family: Georgia;	
}
#ygrp-text p{
    margin: 0 0 1em 0;
}
#ygrp-tpmsgs{
    font-family: Arial;	
    clear: both;
}
#ygrp-vitnav{
	padding-top: 10px;
	font-family: Verdana;
	font-size: 77%;
	margin: 0;
}
#ygrp-vitnav a{
	padding: 0 1px;
}
#ygrp-actbar{
	clear: both;
	margin: 25px 0;
	white-space:nowrap;
	color: #666;
	text-align: right;
}
#ygrp-actbar .left{
	float: left;
	white-space:nowrap;
}
.bld{font-weight:bold;}
#ygrp-grft{
	font-family: Verdana;
	font-size: 77%;
	padding: 15px 0;
}
#ygrp-ft{
  font-family: verdana;
  font-size: 77%;
  border-top: 1px solid #666; 
  padding: 5px 0; 
}
#ygrp-mlmsg #logo{
  padding-bottom: 10px;
}

#ygrp-vital{
	background-color: #e0ecee;
	margin-bottom: 20px;
	padding: 2px 0 8px 8px;
}
#ygrp-vital #vithd{
	font-size: 77%;
	font-family: Verdana;
	font-weight: bold;
	color: #333;
	text-transform: uppercase;
}
#ygrp-vital ul{
	padding: 0;
	margin: 2px 0;
}
#ygrp-vital ul li{
  list-style-type: none;
  clear: both;
  border: 1px solid #e0ecee;  
}
#ygrp-vital ul li .ct{
  font-weight: bold;
  color: #ff7900;
  float: right;
  width: 2em;
  text-align:right;
  padding-right: .5em;
}
#ygrp-vital ul li .cat{
  font-weight: bold;
}
#ygrp-vital a{
	text-decoration: none;
}

#ygrp-vital a:hover{
  text-decoration: underline;
}

#ygrp-sponsor #hd{
	color: #999;
	font-size: 77%;
}
#ygrp-sponsor #ov{
	padding: 6px 13px;
	background-color: #e0ecee;
	margin-bottom: 20px;
}
#ygrp-sponsor #ov ul{
	padding: 0 0 0 8px;
	margin: 0;
}
#ygrp-sponsor #ov li{
	list-style-type: square;
	padding: 6px 0;
	font-size: 77%;
}
#ygrp-sponsor #ov li a{
	text-decoration: none;
	font-size: 130%;
}
#ygrp-sponsor #nc{
  background-color: #eee;
  margin-bottom: 20px;
  padding: 0 8px;
}
#ygrp-sponsor .ad{
	padding: 8px 0;
}
#ygrp-sponsor .ad #hd1{
	font-family: Arial;
	font-weight: bold;
	color: #628c2a;
	font-size: 100%;
	line-height: 122%;
}
#ygrp-sponsor .ad a{
	text-decoration: none;
}
#ygrp-sponsor .ad a:hover{
	text-decoration: underline;
}
#ygrp-sponsor .ad p{
	margin: 0;
}
o{font-size: 0; }
.MsoNormal{
   margin: 0 0 0 0;
}
#ygrp-text tt{
  font-size: 120%;
}
blockquote{margin: 0 0 0 4px;}
.replbq{margin:4}
-->
</style>
</head>
<!--~-|**|PrettyHtmlEnd|**|-~-->
</html><!--End group email -->


--S-xNzloXrDoMKkakEMnZhSnfasvzK6kMbCfzyzK--