Flex Unit 4 Привет, мир

Я хочу использовать 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
    }
}

Как я могу заставить это работать?


person JD Isaacks    schedule 18.10.2010    source источник


Ответы (2)


Добавьте новое приложение в свой проект Flex — назовите его с суффиксом «UnitTest.mxml». Добавьте ссылку на TestRunnerBase, а по завершении создания запустите 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>
person adamcodes    schedule 18.10.2010

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

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

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

person Montagist    schedule 19.10.2010