2012-05-16 16 views
2

我想写一个巨星摇摆测试,但我有麻烦制造/寻找框架夹具。我有两个JFrames,一个打开其他的点击,我想要么:FEST摇摆新的框架点击,不能使新的框架夹具

1)发现新JFrame的框架夹具打开

2)使新帧灯具出(我可以从原来的JFrame对象的对象。)

我曾尝试创建新的JFrame对象使用

GenericTypeMatcher<secondGUI> matcher = new GenericTypeMatcher<secondGUI>(secondGUI.class) { 
     protected boolean isMatching(secondGUI frame) { 
      System.out.println("0".equals(frame.getTitle()) && frame.isShowing()); 
      return "0".equals(frame.getTitle()) && frame.isShowing(); 
     } 
    }; 
    Robot robot = BasicRobot.robotWithCurrentAwtHierarchy(); 

寻找帧,但碰上EdtViolationException。

我也曾尝试

secondGUI secGUI = GuiActionRunner.execute(new GuiQuery<secondGUI>() { 
     @Override 
     protected secondGUI executeInEDT() throws Throwable { 
      return firstGUI.getController().getWindows().get("0"); 
     } 
    }); 
    FrameFixture secondWindow = new FrameFixture(secGUI); 

但最后一行给了一个EdtViolationException为好。 有什么建议吗? 谢谢!

回答

1

尝试使用该框架的标题找到您的框架:

Robot robot = BasicRobot.robotWithCurrentAwtHierarchy(); 
FrameFixture frame = WindowFinder.findFrame("Title of my frame").using(robot); 

此外,secondGUI应该SecondGUI因为它是一个类名。

顺便说一句,很高兴看到另一个FEST用户。