我刚开始学习单元测试(使用 FlexUnit)。我仍然不确定如何使用它们。
我创建了一个新的 flex 项目,并创建了一个名为Car
. 然后,我为 Car 类创建了一个 TestCase 类。
这是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');
}
我想补充的第二个问题是,这些测试单独测试每个类(如实例化Car
类时所示)或者我可以通过实例化主类来测试我的整个应用程序一次?问题是如何模拟应用程序的整个用户流程(用户点击这里,向那里的服务器发送请求等)。我应该在测试方法中一个一个地写一个完整的流程吗?:O