Domanda

Voglio usare il Flex unità 4 suite.

io in realtà non ha alcuna esperienza con test di unità.

Ho scaricato il chiavi in ??mano progetto, ma ero un po 'sopraffatta.

Io fondamentalmente voglio solo iniziare con la creazione di un semplice test di unità ciao mondo.

se ho una classe chiamata MyClass con 2 metodi square() e cube().

e voglio creare uno unit test in questo modo:

public class MyTest 
{
    public function testMyClass():void
    {
        var myClass:MyClass = new MyClass();

        assert(myClass.square(7) == 49);
        assert(myClass.cube(7) == 343);
        assert(myClass.square(5) == 50); // should fail
    }
}

Come posso ottenere questo al lavoro?

È stato utile?

Soluzione

Aggiungi una nuova applicazione per il vostro progetto Flex - il nome con il suffisso 'UnitTest.mxml'. Aggiungere un riferimento a TestRunnerBase, e creationComplete avviare il TestRunnerBase. Questo dovrebbe iniziare:

<?xml version="1.0" encoding="utf-8"?>

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:flexunit="flexunit.flexui.*" creationComplete="init();"><mx:Script>
  <![CDATA[

        import flexunit.framework.TestSuite;
  import FlexUnit.*;

  private function init():void{
   test.test = initSuite();
   test.startTest();
  }

  private function initSuite():TestSuite{
   var suite:TestSuite = new TestSuite();
   suite.addTestSuite(testMyClass);
   return suite;
  }
  ]]>
 </mx:Script>
 <flexunit:TestRunnerBase id="test" width="100%" height="100%" />
</mx:Application>

Altri suggerimenti

Quindi, il problema è che i test non sono ancora in esecuzione? Ad un certo punto, da qualche parte, si dovrebbe vedere la visualizzazione dei risultati del test, sia che passano o falliscono.

Io personalmente uso AsUnit. Quando ero in un Flex proiettare l'altro giorno - che era la prima volta che avessi mai usato AsUnit in un proj Flex - quando ho premuto il pulsante di compilazione, mi è stato chiesto se volevo iniziare la mia applicazione o se volevo avviare il test runner AsUnit invece.

Quindi sì, i test devono essere invocato manualmente in qualche modo, come adamcodes suggerite.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top