Wiki regression testing

From Apertium
Revision as of 15:16, 25 August 2008 by Jacob Nordfalk (talk | contribs)
Jump to navigation Jump to search

Regression testing is the way of testing (translating) a lot of "test phrases" and compare the result to the expected output. This is very usefull if you wants to change a rule or word and wants to get an overview of the consequences.

The regressions tests work by downloading a wiki page with the phrases and the expected output like the page English_and_Esperanto/Regression_tests and then running the translator.

Installation and invocation

Just copy the script regression-tests.sh from an existing language pair and change the names in it.

To start, type sh regression-tests.sh on a Unix box.

Note: If you get output like regression-tests.sh: 28: [[: not found then try bash regression-tests.sh or make the script executable (chmod a+x regression-tests.sh) and execute it by ./regression-tests.sh

Output

For each test, the scipt prints 1) source language 2) expected (correct) output 3) actual output from Apertium. It will only print out the "failed" test (where the expected and actual output is diverging).

Example:

en-eo	  In the 'Boards' section you can change the list of activities. 
	- En la sekcio 'Tabuloj' vi povas ŝanĝi la liston de aktivecoj. 
	+ En la 'Tabuloj' sekcio vi povas ŝanĝi la listo de aktivecoj.

en-eo	  Just untoggle them in the treeview. 
	- Simple malelektu ilin en la arbaspekto. 
	+ Nur *untoggle ilin en la *treeview.

en-eo	  You can save multiple configurations, and switch between them easily. 
	- Vi povas sekurigi multajn agordojn, kaj ŝalti inter ili facile. 
	+ Vi povas savi *multiple *configurations, kaj ŝanĝo inter ilin facile.

en-eo	  You can add multiple profiles, with different lists of boards, and different languages. 
	- Vi povas aldoni plurajn profilojn, kun diversaj listoj de tabuloj, kaj diversaj lingvoj. 
	+ Vi povas aldoni *multiple profiloj, kun diferencaj listoj de tabuloj, kaj diferencaj langoj.