Flash 如何让JSFL在执行testMovie命令后将跟踪输出保存到文件中?

Flash 如何让JSFL在执行testMovie命令后将跟踪输出保存到文件中?,flash,export,jsfl,Flash,Export,Jsfl,我正在尝试为我们的一个产品自动化单元测试。它是基于ActionScript的,但我们没有FlashBuilder。我们使用Jenkins来完成所有的自动输出,我可以让所有的东西都可以很好地使用这个文件,创建并呈现AS Unit tests FLA文件的testMovie。执行此操作将向跟踪输出面板输出测试结果。我使用JSFLSimlar运行这个flash文件 var folderPath = path/to/folder/file.fla if (fl.fileExists(folderPath

我正在尝试为我们的一个产品自动化单元测试。它是基于ActionScript的,但我们没有FlashBuilder。我们使用Jenkins来完成所有的自动输出,我可以让所有的东西都可以很好地使用这个文件,创建并呈现AS Unit tests FLA文件的testMovie。执行此操作将向跟踪输出面板输出测试结果。我使用JSFLSimlar运行这个flash文件

var folderPath = path/to/folder/file.fla
if (fl.fileExists(folderPath))
{
    fl.openDocument(folderPath);
    fl.getDocumentDOM().testMovie;
    fl.getDocumentDOM().close(false);
    fl.outputPanel.save("file:///C:/testJSFL/output.txt");
}
不幸的是,outputPanel.save在testMovie输出作为跟踪操作放置之前运行,我还通过许多Google搜索找到了一种方法,可以让系统等到电影运行后再保存此文件。我甚至多次尝试打开和关闭文件。任何帮助都将不胜感激

确保testMovie作为函数调用,并在关闭前保存输出:


不幸的是,我试图保存的输出来自SWF的执行。因此,即使使用这种设置方式,它的工作原理与上面的相同,并且不向output.txt文件输出任何文本。问题似乎是没有办法告诉JSFL在保存输出之前等待SWF文件完成(尽管我会说,您的操作顺序比我在问题中列出的要好。如果您需要延迟,您可以将其放入SWF面板,并在ActionScript中使用setTimeout来运行JSFL代码(通过MMExecute)。相反,您可以在测试SWF中使用LocalConnection来触发SWF面板,然后调用JSFL。这非常有效,Justin。很抱歉,我花了这么长时间才回复您。延迟正是我所需要的。
var folderPath = path/to/folder/file.fla
if (fl.fileExists(folderPath))
{
    fl.openDocument(folderPath);
    fl.getDocumentDOM().testMovie();
    fl.outputPanel.save("file:///C:/testJSFL/output.txt");
    fl.getDocumentDOM().close(false);
}