Re: junit 4 - generating a test suite at runtime for each pair of tests.

"Colin Vipurs [email protected] [junit]" <[email protected]> Tue, 23 Jun 2015 10:07:09 +0100
Newsgroups gmane.comp.java.junit.user
Message-ID <CAKi4273Q0LupJSus-6TLDxUb2wVOvfa5Wrv40DukuBJmAbM7bA@mail.gmail.com>
--089e01493a0a13189605192bb724
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Hi Ray,

It sounds like one (or more) of your tests is manipulating global state
which is affecting one (or more) other tests, hence the reason for the
failing test passing when run by itself.  Rather than generating a
combination of tests it would be much better to isolate the state
manipulation so that it can be controlled correctly from within the test.

On Tue, Jun 23, 2015 at 2:49 AM, Ray Tayek [email protected] [junit] <
[email protected]> wrote:

>
>
> using junit 4, i have a test case
> <http://xunitpatterns.com/Testcase%20Class.html> that has n test methods
> <http://xunitpatterns.com/Test%20Method.html>, one of the test methods
> fails when the test case is run. and this failing test method succeeds wh=
en
> run by itself.
>
> i would like to dynamically (at run time) create a set of test suites
> <http://xunitpatterns.com/Test%20Suite%20Object.html> (or test cases),
> one for each pair of test methods in the test case.
>
> so a test case with 3 test methods would generate 3!=3D6 test suites (or
> test cases).
>
> thanks
>
> --
> Honesty is a very expensive gift. So, don't expect it from cheap people -=
 Warren Buffett=EF=BB=BFhttp://tayek.com/
>
>=20=20
>



--=20
Maybe she awoke to see the roommate's boyfriend swinging from the
chandelier wearing a boar's head.

Something which you, I, and everyone else would call "Tuesday", of course.

--089e01493a0a13189605192bb724
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable





<head>

<style type=3D"text/css">
<!--

/* start of attachment style */
       .ygrp-photo-title{
         clear: both;
         font-size: smaller;
         height: 15px;
         overflow: hidden;
         text-align: center;
         width: 75px;
       }
       div.ygrp-photo{
         background-position: center;
         background-repeat: no-repeat;
         background-color: white;
         border: 1px solid black;
         height: 62px;
         width: 62px;
       }

       div.photo-title=20
         a,
         div.photo-title a:active,
         div.photo-title a:hover,
         div.photo-title a:visited {
           text-decoration: none;=20
       }

       div.attach-table div.attach-row {
         clear: both;
       }

       div.attach-table div.attach-row div {
         float: left;
         /* margin: 2px;*/
       }

       p {
         clear: both;
         padding: 15px 0 3px 0;
	 overflow: hidden;
       }

       div.ygrp-file {
         width: 30px;
         valign: middle;
       }
       div.attach-table div.attach-row div div a {
         text-decoration: none;
       }

       div.attach-table div.attach-row div div span {
         font-weight: normal;
       }

       div.ygrp-file-title {
         font-weight: bold;
       }
 /* end of attachment style */
        -->
        </style>
        </head>
<html>
<head>
<style type=3D"text/css">
<!--
#ygrp-mkp {
  border: 1px solid #d8d8d8;
  font-family: Arial;
  margin: 10px 0;
  padding: 0 10px;
}

#ygrp-mkp hr {
  border: 1px solid #d8d8d8;
}

#ygrp-mkp #hd {
  color: #628c2a;
  font-size: 85%;
  font-weight: 700;
  line-height: 122%;
  margin: 10px 0;
}

#ygrp-mkp #ads {
  margin-bottom: 10px;
}

#ygrp-mkp .ad {
  padding: 0 0;
}

#ygrp-mkp .ad p {
  margin: 0;
}

#ygrp-mkp .ad a {
  color: #0000ff;
  text-decoration: none;
}
-->
</style>
</head>
<body>



<!-- |**|begin egp html banner|**| -->

<br><br>

<!-- |**|end egp html banner|**| -->


<div dir=3D"ltr">Hi Ray,<div><br></div><div>It sounds like one (or more) of=
 your tests is manipulating global state which is affecting one (or more) o=
ther tests, hence the reason for the failing test passing when run by itsel=
f.=C2=A0 Rather than generating a combination of tests it would be much bet=
ter to isolate the state manipulation so that it can be controlled correctl=
y from within the test. =C2=A0</div></div><div class=3D"gmail_extra"><br><d=
iv class=3D"gmail_quote">On Tue, Jun 23, 2015 at 2:49 AM, Ray Tayek <a href=
=3D"mailto:[email protected]">[email protected]</a> [junit] <span dir=3D"ltr"=
>&lt;<a href=3D"mailto:[email protected]" target=3D"_blank">junit@yahoo=
groups.com</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=
=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<u></u>









=20
<div style=3D"background-color:#fff">
<span>=C2=A0</span>


<div>
  <div>


    <div>
=20=20=20=20=20=20
=20=20=20=20=20=20
      <p>
=20=20
=20=20
    </p><p>using junit 4, i have a <a href=3D"http://xunitpatterns.com/Test=
case%20Class.html" rel=3D"nofollow" target=3D"_blank">test case</a> that ha=
s n <a href=3D"http://xunitpatterns.com/Test%20Method.html" rel=3D"nofollow=
" target=3D"_blank">test methods</a>, one of the test methods fails
      when the test case is run. and this failing test method succeeds
      when run by itself.</p>
    <p>i would like to dynamically (at run time) create a set of <a href=3D=
"http://xunitpatterns.com/Test%20Suite%20Object.html" rel=3D"nofollow" targ=
et=3D"_blank">test suites</a> (or test cases), one for each
      pair of test methods in the test case.</p>
    <p>so a test case with 3 test methods would generate 3!=3D6 test
      suites (or test cases).<br>
    </p>
    <p>thanks<br>
    </p>
    <pre cols=3D"72">--=20
Honesty is a very expensive gift. So, don&#39;t expect it from cheap people=
 - Warren Buffett=EF=BB=BF
<a href=3D"http://tayek.com/" target=3D"_blank">http://tayek.com/</a></pre>
=20=20

<p></p>

    </div>
=20=20=20=20=20

=20=20=20=20
    <div style=3D"color:#fff;min-height:0"></div>


</div>



=20=20






</blockquote></div><br><br clear=3D"all"><div><br></div>-- <br><div class=
=3D"gmail_signature">Maybe she awoke to see the roommate&#39;s boyfriend sw=
inging from the chandelier wearing a boar&#39;s head.<br><br>Something whic=
h you, I, and everyone else would call &quot;Tuesday&quot;, of course.</div=
>
</div>




<!-- |**|begin egp html banner|**| -->

<br>


<br>

<!-- |**|end egp html banner|**| -->


<div width=3D"1" style=3D"color: white; clear: both;"/>__._,_.___</div>

=20=20=20=20=20=20
=20=20

=20=20=20=20
    <div id=3D"fromDMARC" style=3D"clear:both; margin-top: 10px;">
         <hr style=3D"height:2px ; border-width:0; color:#E3E3E3; backgroun=
d-color:#E3E3E3;">
         Posted by: Colin Vipurs &lt;[email protected]&gt;         <hr st=
yle=3D"height:2px ; border-width:0; color:#E3E3E3; background-color:#E3E3E3=
;">
    </div>
<!-- Start Recommendations -->
<!-- End Recommendations -->



<!-- |**|begin egp html banner|**| -->

  <img src=3D"http://geo.yahoo.com/serv?s=3D97476590/grpId=3D2423328/grpspI=
d=3D1705006905/msgId=3D24668/stime=3D1435054166" width=3D"1" height=3D"1"> =
<br>

<!-- |**|end egp html banner|**| -->

=20=20
<!-- |**|begin egp html banner|**| -->

<br>



=20=20=20
=20=20=20=20=20
=20
        <!-- |**|begin egp html banner|**| -->
        <div id=3D"ygrp-vital" style=3D"background-color: #f2f2f2; font-fam=
ily: Verdana; font-size: 10px; margin-bottom: 10px; padding: 10px;">

        <span id=3D"vithd" style=3D"font-weight: bold; color: #333; text-tr=
ansform: uppercase; "><a href=3D"https://groups.yahoo.com/neo/groups/junit/=
info;_ylc=3DX3oDMTJlYXRjMHZmBF9TAzk3MzU5NzE0BGdycElkAzI0MjMzMjgEZ3Jwc3BJZAM=
xNzA1MDA2OTA1BHNlYwN2dGwEc2xrA3ZnaHAEc3RpbWUDMTQzNTA1NDE2Ng--" style=3D"tex=
t-decoration: none;">Visit Your Group</a></span>

     <ul style=3D"list-style-type: none; margin: 0; padding: 0; display: in=
line;">
                                                    </ul>
  </div>


<div id=3D"ft" style=3D"font-family: Arial; font-size: 11px; margin-top: 5p=
x; padding: 0 2px 0 0; clear: both;">
  <a href=3D"https://groups.yahoo.com/neo;_ylc=3DX3oDMTJkNWJnZTdoBF9TAzk3ND=
c2NTkwBGdycElkAzI0MjMzMjgEZ3Jwc3BJZAMxNzA1MDA2OTA1BHNlYwNmdHIEc2xrA2dmcARzd=
GltZQMxNDM1MDU0MTY2" style=3D"float: left;"><img src=3D"http://l.yimg.com/r=
u/static/images/yg/img/email/new_logo/logo-groups-137x15.png" height=3D"15"=
 width=3D"137" alt=3D"Yahoo! Groups" style=3D"border: 0;"/></a>
  <div style=3D"color: #747575; float: right;"> &bull; <a href=3D"https://i=
nfo.yahoo.com/privacy/us/yahoo/groups/details.html" style=3D"text-decoratio=
n: none;">Privacy</a> &bull; <a href=3D"mailto:junit-unsubscribe@yahoogroup=
s.com?subject=3DUnsubscribe" style=3D"text-decoration: none;">Unsubscribe</=
a> &bull; <a href=3D"https://info.yahoo.com/legal/us/yahoo/utos/terms/" sty=
le=3D"text-decoration: none;">Terms of Use</a> </div>
</div>

<!-- |**|end egp html banner|**| -->

  </div> <!-- ygrp-msg -->

=20=20=20


  <br>

<!-- |**|end egp html banner|**| -->


<div style=3D"color: white; clear: both;"/>__,_._,___</div>
</body>

</html>

--089e01493a0a13189605192bb724--