User:Ilnar.salimzyan/On testing

From Apertium
< User:Ilnar.salimzyan
Revision as of 20:17, 11 December 2014 by Ilnar.salimzyan (talk | contribs) (Created page with "<pre> Test-driven language pair development or on testing strategy in Apertium ======================================================================== Some terminology -----...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Test-driven language pair development or on testing strategy in Apertium
========================================================================

Some terminology
----------------

# Acceptance tests define when a language pair or a particular sub-module (like
# morphological transducer or CG) are done. That is, they define the
# requirements for what you are going to develop and are written in the process
# of communicating with "stakeholders"/mentors or anyone funding the
# development.

# Unit tests are written by programmers for programmers. They describe how the
# system works and what the structure and behavior of the code is.

# Integration tests, as the name suggests, test whether components (in our case,
# these are modules like morphological transducers, disambiguators, lexical
# selection rules and transfer rules) are successfully integrated into a system
# (=language pair). In case of a language pair, you can think of the acceptance
# tests for that language pair as integration tests, since they test how modules
# of the language pair integrate into a complete machine translation system.

Overview
--------

                    Testing an Apertium MT system
                            /         \
                           /           \
                          /             \
                     Acceptance       Unit tests
                       tests               |
                       /             testing the output
                      /              of each module
                     /                     |
      * Regression-Pending tests      Morphological--Acceptance: * recall or coverage            
              on the wiki              transducers               * precision
      * Corpus test                        |      \              * # of stems
         * upper bound for WER             |       --Unit: * morphophonology
         * upper bounds for [*@#]          |               * morphotactics
                 errors              ConstraintGr----Acceptance: * ambig. rate before&after 
      * Testvoc (has to be clean)          |   \                 * precision
                                           |    \                * # of rules
                 +                         |     ----Unit: * INPUT/OUTPUT comments for each
                                           |                      rule
              numbers                  Transfer------Acceptance: * wiki tests for phrases and
      * of stems in the bidix                 \                       sentences
      * of lrx rules <-> ambiguity             \                 * "testvoc-lite" tests for           
        rate before and after                   \                    single-words
      * transfer rules                           ----Unit: * INPUT/OUTPUT comments in the headers
                                                                   of rules

                 +
 
       (gisting evaluation)