On Thu, Sep 23, 2010 at 1:04 PM, Dan Nessett <[email protected]> wrote:

> After thinking about this some more I think you are right. We should at
> least start with something simple and only make it more complex (e.g.,
> wiki resource switching) if the simple approach has significant problems.
>
> There is already a way to 'bundle' individual tests together. It is the
> selenium test suite. We could use that. We could then break up a
> regression test into separate test suites that could run concurrently.
>
> Summarizing, here is my understanding of your proposal:
>
[snip]

That all sounds great to me!


> There are still some open questions:
>
> + How do you establish a fresh wiki for a URL used previously for a test
> run?
>

If reusing wikis, simplest way would be to just remove the old one and
reinitialize it:

rm -rf /path/to/images/foowiki
mysql -e 'drop database foowiki; create database foowiki; use foowiki;
source db/tables.sql;'
php maintenance/update.php foowiki

(If using memcached, be sure to clear those out, reinitialize, or otherwise
do something that forces old values to be cleared or ignored.)

+ URLs identify test wikis. Only one regression test can run at time on
> any one of these. How do you synchronize regression test initiation so
> there is some sort of lock on a test wiki currently running a regression
> test?
>

Simplest way would be to have one wiki (database + URL) for each regression
test ("test1234wiki"), or even for each run of each regression test
("test1234run432wiki").

These could be created/removed as needed through simple shell scripting.

-- brion
_______________________________________________
Wikitech-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikitech-l

Reply via email to