[7] RE: [CF-Devel] Starting Suspended Animation Process

Bob Tanner tanner at real-time.com
Thu Jan 3 12:59:51 CST 2002


Quoting Mark Wedel (
     
     mwedel at sonic.net
     
     ):
>
     
      First, for better or worse, the #crossfire irc channel has become a place
     
     >
     
      where lots of discussion is going on.  This is good in many cases when
     
     >
     
      bouncing ideas of people or discussing certain ideas.  The problem here is
     
     >
     
      that if you are not online at irc when the discussion happens, the first you
     
     >
     
      hear about it is when it gets checked it.  
     
     
Most irc clients have logging capabilities. When one of these discussions takes
place couldn't someone log it and then send it to Leaf to have it posted to the
website or have the logger send it to the crossfire-devel list?

>
     
       Second, while multiple cvs branches (stable vs unstable) may seem to help, it
     
     >
     
       only really does if people actually do run the unstable branches.  
     
     <snip>
>
     
       The spoken rule is that the functionality needs to have been tested, but
     
     >
     
       saying 'tested' is fairly broad (trying to figure out all the interactions
     
     >
     
       your code has with other code.  There are no testsuites in crossfire, so its
     
     >
     
       not like you can just go and run a regression test and see if anything
     
     >
     
       breaks.
     
     
IMHO this is the biggest issue with the crossfire project (and all the other
open source project I contribute to). No test suite, so it's almost impossible
to know if your code integrates correct until someone installs it on their
server and people play test it.

Functional testing will always require game play, but I think to partially
answer the question, "Does my code break anything?", there should be a set of
unit tests.

There are tools to help out. 

	
     
     http://check.sourceforge.net/
     
     
     http://www.xprogramming.com/ftp/TestingFramework/wall/CUnit.zip
     
     
     http://www.codefactory.se/~spotty/cunit/
     
     

>
     
       Perhaps some formal release schedule may be used, eg, at the end of every
     
     >
     
       third quarter, an official release is mode.
     
     
Doesn't this "break" the open source mantra of release early, release often?

Part of the problem is stability of a release. We don't roll a release until
it's stable. But we don't know if it's stable until we release it.
Chicken-n-the-egg thing.

Test suite will help. If the code passes all of the tests, it's as stable as we
can make it until someone does the functional/game play testing.

Recently my company switched development methofs from MSF to Extreme
Programming (XP). It's be a real eye opener. XP put the "fun" back into coding.
Anyways, one of the major components of XP is unit testing and I can't praise
this enough. The quality of code being turned out is magnitudes better then
before. I think applying a little unit testing to crossfire will help some of
these issues that have been discussed here and on irc.

-- 
Bob Tanner <
     
     tanner at real-time.com
     
     >         | Phone : (952)943-8700
     
     http://www.mn-linux.org,
     
      Minnesota, Linux | Fax   : (952)943-8500
Key fingerprint =  6C E9 51 4F D5 3E 4C 66 62 A9 10 E5 35 85 39 D9 


    
    


More information about the crossfire mailing list