I'm starting a new thread because I noticed my news reader has glued together
messages with the title "A potential land mine" and "MW test infrastructure
architecture," which may confuse someone coming into the discussion late. Also,
the previous thread has branched into several topics and I want to concentrate
on only one, specifically what can we assume about the system environment for a
test infrastructure? These assumptions have direct impact on what test harness
we use. Let me start by stating what I think can be assumed. Then people can
tell me I am full of beans, add to the assumptions, subtract from them, etc.
The first thing I would assume is that a development system is less constrained
than a production system in what can and what cannot be installed. For example,
people shot down my proposal to automatically discover the MW root directory
because some production systems have administrators without root access,
without the ability to load code into the PEAR directory, etc. Fair enough
(although minimizing the number of places where $IP is computed is still
important). However, if you are doing MW development, then I think this
assumption is too stringent. You need to run the tests in /tests/PHPUnitTests,
which in at least one case requires the use of $wgDBadminuser and
$wgDBadminpassword, something a non-priviledged user would not be allowed to do.
If a developer has more system privileges than a production admin, to what
extent? Can we assume he has root access? If not, can we assume he can get
someone who has to do things like install PHPUnit? Can we assume the
availability of PERL or should we only assume PHP? Can we assume *AMP (e.g.,
LAMP, WAMP, MAMP, XAMP)? Can we assume PEAR? Can the developer install into
PEAR?
Dan
_______________________________________________
Wikitech-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikitech-l