Flex Unit 4 - Hello World - PullRequest
       19

Flex Unit 4 - Hello World

3 голосов
/ 18 октября 2010

Я хочу использовать Flex Unit 4. Suite.

У меня нет особого опыта в модульном тестировании.

Я скачал проект Под ключ , но ябыл немного ошеломлен.

Я просто хочу начать с создания простого юнит-теста Hello World.

, если у меня есть класс с именем MyClass с двумя методами square() и cube().

и я хочу создать модульный тест следующим образом:

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
    }
}

Как мне заставить это работать?

Ответы [ 2 ]

1 голос
/ 19 октября 2010

Итак, проблема в том, что ваши тесты даже не запущены?В какой-то момент, где-то, вы должны увидеть отображение результатов вашего теста, независимо от того, пройдены они или нет.

Я лично использую ASUnit.Когда я был в проекте Flex на днях - это был первый раз, когда я использовал ASUnit в Flex Proj - когда я нажал кнопку компиляции, меня спросили, хочу ли я запустить свое приложение или хочувместо этого запустите тестовый прогон ASUnit.

Так что да, ваши тесты нужно каким-то образом вызывать вручную, как предложили adamcodes.

1 голос
/ 19 октября 2010

Добавьте новое приложение в свой проект Flex - назовите его суффиксом «UnitTest.mxml».Добавьте ссылку на TestRunnerBase и при созданииComplete запустите TestRunnerBase.Это должно начать вас:

<?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>
...