In order to release the incidence of newbie problems, I'd like to propose
that all concerned developers agree on a checklist to be followed.
I offer one here as a starting point.
It's a bit strict, especially with respect to the reproducibility of the
Win32 binaries, but will pay off in the long run
I guess the most controversial point is with stipulating the use of MS
Visual C++. I do this because MSVC++ is as common in Windows as gcc is in
Linux, and has (unfortunately) won acceptance as the de-facto standard
Windows C/C++ compiler.
Cheers
David
-----------------------------------------
Freenet for Windows - Pre-Release QA Procedures
0. Requirements
( ) 0.1 Three or more testers, at least two of whom are not directly
involved with Freenet Winstaller development
( ) 0.2 At least two independent installations of each of the following
operating systems:
( ) Windows 2000
( ) Windows 98-SE
( ) 0.3 Desirable to have Windows ME, 98FE, 95C, 95B and NT4 as well
( ) 0.4 All these installations must be completely free of any trace of
Freenet and java runtimes. Disk partition images saved to disk and restored
with utilities such as Norton Ghost are ideal
( ) 0.5 At least two of the testers should have MS Visual C++ v6.0 or
later, plus NullSoft 'MakeNSIS' installer generator v1.2c or later,
installed
1. 3rd Party Build
Each tester possessing MS Visual C++ should successfully execute the
following steps, without altering the location or contents of any files.
( ) 1.1 Create a directory free of any trace of Freenet
( ) 1.2 Download the CVS tree Contrib/wininstall in the Stable branch
( ) 1.3 Verify that this CVS tree is completely free from binary files,
except for graphics files and freenet.jar
( ) 1.4 Open a file called 'freenet.dsw' at the top level within the
wininstall tree (this should be present in CVS), which will start up MS
Visual C++
( ) 1.5 Without selecting any MSVC project to be 'active', click on the
'build' function with MS Visual C++, and verify that *all* components build
successfully without errors.
( ) 1.6 Right-click on the installer script file, 'freenet.nsi', choose
'compile nsi', and verify that the script file produces a Freenet installer
without errors
2. Third Party Installation and Execution
Each tester should, without touching the contents or location of any files,
and without taking *any* other steps, perform the following successfully:
( ) 2.0 Install a windows operating system (or ghost one from a previously
saved partition image), and verify that this operating system is completely
free of any traces of Freenet or Java
( ) 2.1 Install a recent version of the Sun Java Runtime Environment, OR
the Sun Java SDK
( ) 2.2 Execute the Freenet installer file which was generated in step 1.6
above
2.2.1 ( ) Choose the Sun Java interpreter
2.2.2 ( ) Choose a port number different to the one which the
installer suggests
( ) 2.3 Open any available internet connection
( ) 2.4 Double-click on the Freenet 'hops' tray icon, and wait for the tray
icon to appear, without any error indications
( ) 2.5 Double-click on the tray icon, and verify that the chosen web
browser displays the fproxy start page
( ) 2.6 Click 'refresh' on the web browser, to verify that the fproxy
startpage has not been served from the browser cache
( ) 2.7 Click on the 'Snarfoo' link on the fproxy startpage, and verify
that the Snarfoo site comes up (snarfoo is chosen since it's a popular,
well-maintained freesite).
( ) 2.8 Click on a number of Snarfoo links, also try another link from
fproxy startpage, and verify that a majority of the links work
( ) 2.9 Prepare a small text, html or image file, and upload it on Fproxy
with a KSK key
( ) 2.10 Request the same file's KSK with fproxy, and verify that it
retrieves successfully
If these steps are successfully executed by the quota of test personnel,
machines and operating systems specified above, then the generated version
of Freenet for Windows can be deemed worthy of release.
_______________________________________________
Devl mailing list
Devl at freenetproject.org
http://lists.freenetproject.org/mailman/listinfo/devl