単体テスト (FlexUnit を使用) の勉強を始めたばかりです。私はまだそれらを使用する方法がわかりません。
新しいFlexプロジェクトを作成し、名前のクラスを作成しましたCar
。次に、車のクラス用のテストケースクラスを作成しました。
これは、FlexBuilder から提供されたデフォルトのテンプレートで、トレースをいくつか入れました。
package flexUnitTests
{
import flexunit.framework.Assert;
public class CarTest
{
[Before]
public function setUp():void
{
trace('before test function');
}
[After]
public function tearDown():void
{
trace('after test function');
}
[BeforeClass]
public static function setUpBeforeClass():void
{
trace('before test class');
}
[AfterClass]
public static function tearDownAfterClass():void
{
trace('after test class');
}
[Test]
public function testCar():void
{
trace('the test function');
var c:Car = new Car("gol");
Assert.assertTrue("Is car name valid:", c.name != "gol");
}
}
}
テスト関数の前または後に実行するメソッドが非常に多い理由がわかりません。次のような単純な関数内でそれらを使用しないのはなぜですか。
[Test]
public function testCar():void
{
trace('before test class');
trace('before test function');
trace('the test function');
var c:Car = new Car("gol");
Assert.assertTrue("Is car name valid:", c.name != "gol");
trace('after test function');
trace('after test class');
}
追加したい 2 番目の質問は、これらのテストは各クラスを個別にテストするか (クラスをインスタンス化するときに示されるようにCar
)、またはメイン クラスをインスタンス化することでアプリケーション全体を 1 回テストできるかということです。問題は、アプリケーションのユーザーフロー全体をシミュレートする方法です (ユーザーはここをクリックし、サーバーにリクエストを送信するなど)。テストメソッドにフロー全体を 1 つずつ記述する必要がありますか?:O