| 

.NET C# Java Javascript Exception

2
Ich will eine wizard page mit SWTBot testen, wenn ich nur ein testr fall habe ,dann wird er grün, jedoch wenn ich zwei test fälle habe, wird er rot, obwohl er genau das gleiche testet!?
Ich kriege dann immer eine fehlermeldung:
invalid thread access


mein code:
public class TestManualSettingsWizardPage {

/** die zu testende Klasse */
private ManualSettingsWizardPage wizard;
private SWTBotShell botShell;
private Shell shell;
private Display display;
private SWTBot bot;

@Before
public void setUp() {
SWTBotPreferences.KEYBOARD_LAYOUT = "EN_US";
display = new Display();
bot = new SWTBot();
wizard = new ManualSettingsWizardPage();
shell = new Shell(display);

botShell = new SWTBotShell(shell);
shell.setBounds(200, 200, 400, 400);
shell.setLayout(new FillLayout());
wizard.createControl(shell);
shell.open();
shell.layout();
bot = botShell.bot();
}

@After
public void tearDown() {
bot.sleep(3000);
botShell.close();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
}

@Test
public void textField_title() throws Exception {
SWTBotText textTitle = bot.textWithLabel("Titel der Dokumentation:");
textTitle.setText("Titel");
assertThat(textTitle.getText(), is("Titel"));
}

@Test
public void textField_kindOfDoc() throws Exception {
SWTBotText textTitle = bot.textWithLabel("Art des Dokuments:");
textTitle.setText("Art");
assertThat(textTitle.getText(), is("Art"));
}

}

wenn ich jedoch den fehler google, sagen sie immer das ich das als thread starten soll,
Display.getDefault().syncExec( new Runnable() {  public void run() { } });

jedoch funktioniert das nicht!
Wie kann ich jetzt das Problem lösen?Ich starte es als SWTBotTest!
14.01.2013
tanzverfuehrung 147 8
1 Antwort
0
display.close();
display.dispose();
14.01.2013
tanzverfuehrung 147 8

Stelle deine Thread-Frage jetzt!