フレックスユニット4 - Hello World
-
09-10-2019 - |
質問
Flex Unit 4スイートを使用したいです。
ユニットテストの経験は本当にありません。
ダウンロードしました ターンキー プロジェクトですが、私は少し圧倒されました。
基本的に、シンプルなHello Worldユニットテストを作成することから始めたいだけです。
クラスが呼ばれている場合 MyClass
2つの方法で 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
}
}
どうすればこれを機能させることができますか?
解決
Flexプロジェクトに新しいアプリケーションを追加します - 「Unittest.mxml」の接尾辞で名前を付けます。 TestRunnerBaseへの参照を追加し、CreationCompleteで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>
他のヒント
問題は、テストが実行されていないことです。ある時点で、どこかで、テスト結果が合格するか失敗するかにかかわらず、テスト結果の表示が表示されるはずです。
私は個人的にAsunitを使用しています。先日フレックスプロジェクトにいたとき - フレックスプロジでasunitを使用したのは初めてでした - コンパイルボタンを押したとき、アプリケーションを起動したいのか、それともやりたいのかと尋ねられました。代わりに、Asunitテストランナーを起動します。
したがって、Adamcodesが提案したように、あなたのテストは何らかの形で手動で呼び出す必要があります。
所属していません StackOverflow