diff options
Diffstat (limited to 'karm/test/README')
-rw-r--r-- | karm/test/README | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/karm/test/README b/karm/test/README new file mode 100644 index 000000000..31dbc8d24 --- /dev/null +++ b/karm/test/README @@ -0,0 +1,80 @@ +This directory holds automated tests for karm. + +It's in very rough shape. + + +How you start: + + (1) get and install kdepim including karm + + (2) get and install xautomation from http://hoopajoo.net/projects/xautomation.html + + (3) get and install Net::DAV::Server with CPAN + + (4) get and install Net::Virtual::Plain with CPAN + + (5) get and install File::Find::Rule::Filesys::Virtual with CPAN + + (6) start the automated tests with the command make check + + +Here are some of the issues: + + (1) The tests require KDE to be running in English. + + The automated XTests use shortcut keys to drive the app. These key + combinations are language specific. + + (2) The tests require that you "make install" first. + + The XAutomation tests and tests that use DCOP run karm from the bash + prompt. + + (3) The tests are destructive. + + If you have an already running instance of karm, the tests will kill + that instance. So you cannot, for example, record time spent running + karm automated tests. + + The tests are smart enough to use test iCalendar files. But they will + alter the karm storage settings for the ics file name. + + (4) The runscripts program does not kill scripts that never return. + + You have to monitor the progress and press Control-C if you think a + script is hung. + + (5) No attempt is made to check for installed script interpreters. + + In addition to required interpreters (Python 2.2, for example), the bash + scripts use xte, which on Debian is in the xautomation package. + + If a required library is not found, runscripts will consider this a + script failure and stop. + + (6) I have only tested this with Bash on GNU/Linux. + + (7) When a test fails, it is really hard to figure out why. There is too + much stuff mixed together on the console output, and the tests + themselves do not give much info when they fail. + +That having been said, I find it so useful that I will keep working on this so +it should get better shortly. + + +Some notes on runscripts.cpp: + + Parses this directory for script files (Python, PHP, Perl and Bash). It + identifies a script file by the extension. + + It runs any script files it finds. Within each script type, it runs the + scripts in alphabetical order. Scripts that start with a double underscore + are skipped. + + When a script fails runscripts stops. + + Script files should return a non-zero exit code to indicate a failure. + +-- +Mark Bucciarelli <mark@hubcapconsulting.com> +December 6, 2004 |