Applet
をFramFixture
にロードする方法は、hereと記載されています。これを実行するには、FESTがSWINGコンポーネントでのみ動作し、AWTコンポーネントでは動作しないため、次のボタンのタイプをButton
からJButton
に変更する必要があります。さらに、FESTがテストケース内のボタンを識別できるように、ボタンの名前を設定する必要があります。これを行うには、次の行を追加してください:
JButton nextButton = new JButton("next");//sets the visible Label
nextButton.setName("nextButton");//sets a name invisible for the User.
ここであなたのボタンはテストケース内にあります。私は、このテストケースを使用し、それがうまく働いた:
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();
}
}
私はまだあなたが 'FrameFixture'にあなたのコンピュータ上で開いているブラウザウィンドウにアプレットをロードする方法を理解していない...あなたもそれを行うことができますか? –
この回答は、Javaアプレットがローカルに保存されていることを前提としています。つまり、既に開いていたWebアプレットでは機能しません。 –