Updated regression testing documentation.

This commit is contained in:
Tony Lambregts 2003-02-17 01:49:13 +00:00 committed by Alexandre Julliard
parent 893f5ff432
commit 027cef8b8e
1 changed files with 40 additions and 34 deletions

View File

@ -1,5 +1,5 @@
<chapter id="cvs-regression"> <chapter id="cvs-regression">
<title>How to do regression testing using Cvs</title> <title>How to do regression testing using CVS</title>
<para> <para>
written by Gerard Patel written by Gerard Patel
@ -18,8 +18,8 @@
<orderedlist> <orderedlist>
<listitem> <listitem>
<para> <para>
Get the 'full cvs' archive from winehq. This archive is Get the <quote>full CVS</quote> archive from winehq. This archive is
the cvs tree but with the tags controlling the versioning the CVS tree but with the tags controlling the versioning
system. It's a big file (> 40 meg) with a name like system. It's a big file (> 40 meg) with a name like
wine-cvsdirs-&lt;last update date> (it's more than 100mb wine-cvsdirs-&lt;last update date> (it's more than 100mb
when uncompressed, you can't very well do this with when uncompressed, you can't very well do this with
@ -31,7 +31,7 @@
untar it into a repository directory: untar it into a repository directory:
<screen> <screen>
cd /home/gerard cd /home/gerard
tar -zxfcvs-dirs-2000-05-20.tar.gz tar -zxf cvs-dirs-2003-01-15.tar.gz
mv wine repository mv wine repository
</screen> </screen>
</para> </para>
@ -57,13 +57,13 @@
</para> </para>
<para> <para>
Note also that it is possible to do all this with a direct Note also that it is possible to do all this with a direct
Cvs connection, of course. The full cvs file method is less CVS connection, of course. The full CVS file method is less
painful for the winehq cvs server and probably a bit faster painful for the winehq CVS server and probably a bit faster
if you don't have a very good net connection. if you don't have a very good net connection.
</para> </para>
<note> <note>
<para> <para>
If you use Cvs directly from the winehq.com server, do not If you use CVS directly from the winehq.com server, do not
forget to add to your <filename>.cvsrc</filename> file: forget to add to your <filename>.cvsrc</filename> file:
</para> </para>
<screen> <screen>
@ -76,18 +76,20 @@
<listitem> <listitem>
<para> <para>
you will have now in the <filename>~/wine</filename> you will have now in the <filename>~/wine</filename>
directory an image of the cvs tree, on the client side. directory an image of the CVS tree, on the client side.
Now update this image to the date you want: Now update this image to the date you want:
<screen> <screen>
cd /home/gerard/wine cd /home/gerard/wine
cvs -d $CVSROOT update -D "1999-06-01 EDT" cvs -d $CVSROOT update -D "2002-06-01 CST"
</screen> </screen>
</para> </para>
<para> <para>
The date format is <literal>YYYY-MM-DD HH:MM:SS</literal>. The date format is <literal>YYYY-MM-DD HH:MM:SS</literal>.
Using the EDT date format ensure that you will be able to Using the CST date format ensure that you will be able to
extract patches in a way that will be compatible with the extract patches in a way that will be compatible with the
wine-cvs archive : http://www.winehq.com/hypermail/wine-cvs wine-cvs archive
<ulink url="http://www.winehq.com/hypermail/wine-cvs">
http://www.winehq.com/hypermail/wine-cvs</ulink>
</para> </para>
<para> <para>
Many messages will inform you that more recent files have Many messages will inform you that more recent files have
@ -99,7 +101,8 @@
</para> </para>
<para> <para>
<command>cvs update</command> is not limited to upgrade to <command>cvs update</command> is not limited to upgrade to
a <emphasis>newer</emphasis> version as I have believed for far too long :-( a <emphasis>newer</emphasis> version as I have believed for
far too long :-(
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
@ -118,18 +121,19 @@
April, if not, to 1st October, and so on. April, if not, to 1st October, and so on.
</para> </para>
<para> <para>
If you have lot of hard disk free space (a full compile takes If you have lot of hard disk free space (a full compile currently
currently 400 Mb), copy the oldest known working version before takes 400 Mb), copy the oldest known working version before
updating it, it will save time if you need to go back (it's updating it, it will save time if you need to go back. (it's
better to make distclean before going back in time, so you better to <command>make distclean</command> before going back in
have to make everything if you don't backup the older version) time, so you have to make everything if you don't backup the older
version)
</para> </para>
<para> <para>
When you have found the day where the problem happened, continue When you have found the day where the problem happened, continue
the search using the wine-cvs archive (sorted by date) and a the search using the wine-cvs archive (sorted by date) and a
more precise cvs update including hour, minute, second : more precise cvs update including hour, minute, second :
<screen> <screen>
cvs -d $CVSROOT update -D "1999-06-01 15:17:25 EDT" cvs -d $CVSROOT update -D "2002-06-01 15:17:25 CST"
</screen> </screen>
This will allow you to find easily the exact patch that did it. This will allow you to find easily the exact patch that did it.
</para> </para>
@ -137,8 +141,10 @@
<listitem> <listitem>
<para> <para>
If you find the patch that is the cause of the problem, you have If you find the patch that is the cause of the problem, you have
almost won; report about it on <systemitem>comp.emulators.windows.wine</systemitem> almost won; report about it to
or susbscribe to wine-devel and post it there. There is a chance that the author <ulink url="http://bugs.winehq.com/">Wine Bugzilla</ulink>
or susbscribe to wine-devel and post it there. There is a chance
that the author
will jump in to suggest a fix; or there is always the possibility will jump in to suggest a fix; or there is always the possibility
to look hard at the patch until it is coerced to reveal where is to look hard at the patch until it is coerced to reveal where is
the bug :-) the bug :-)