我发现FEST-Swing能够自动执行Java applet上的UI操作。

FEST-Swing还可以测试桌面应用程序以及applet(在
查看器和浏览器中。)

我试图准备一个脚本来查看其功能,但无法弄清楚如何将小程序源加载到FEST来执行操作。

如何将Java Applet加载到FEST中?具体来说,我想举一个关于如何将下面的applet加载到FEST中的示例。
http://java.sun.com/applets/jdk/1.4/demo/applets/GraphicsTest/example1.html

我在脚本中想要的只是单击“下一步”和“上一步”按钮。

最佳答案

here描述了如何将Applet加载到FramFixture。要使此按钮运行,您需要将Next-Button的类型从Button更改为JButton,因为FEST仅在SWING组件上起作用,而在AWT组件上不起作用。另外,您还必须设置按钮的名称,以便FEST可以标识测试用例中的按钮。为此,请添加以下行:

JButton nextButton = new JButton("next");//sets the visible Label
nextButton.setName("nextButton");//sets a name invisible for the User.

现在,您可以在测试用例中找到您的Button。我使用了这个TestCase,它运行良好:
public class FestTestApplet extends TestCase{

    private AppletViewer viewer;
    private FrameFixture applet;

    @Override
    public void setUp() {
      final Applet app = new GraphicsTest();
      viewer = AppletLauncher.applet(app).start();
      applet = new FrameFixture(viewer);
      applet.show();
    }

    public void testNextButtonClick() {
      applet.button("nextButton").click();//finds the button by the name
      applet.robot.waitForIdle();//give the GUI time to update
      //start your asserts
    }

    @Override
    public void tearDown() {
      viewer.unloadApplet();
      applet.cleanUp();
    }
}

09-11 20:30