Swtbot не может найти представление из стека деталей после того, как представление закрыто один раз - PullRequest
0 голосов
/ 28 мая 2019

Я тестирую приложение RCP для Windows, используя бот SWT. Приложение похоже на мастера и содержит две части стека, которые зависят друг от друга. Я использую дескриптор детали, чтобы создать деталь внутри стека детали со свойством removeOnHide, потому что я хочу удалить деталь из стека при закрытии. Поэтому, когда я делаю тест с ботом, первый тест работает хорошо. В @AfterClass я закрываю часть, и когда запускается второй тест, бот больше не может найти созданную часть (часть видна в приложении).

Я должен отметить, что в @PersistState я очищаю стек деталей, потому что не хочу иметь постоянство вообще.

Я пытался удалить свойство removeOnHide и не очищать стек, и он работает следующим образом, но это не поведение приложения.

     private void addPart(String descriptor, String partStackId) {
         MPartStack stack = (MPartStack)     
         modelService.find(partStackId, app);
         MPart newPart = null;
         newPart = partService.createPart(descriptor);
         List<MStackElement> children = stack.getChildren();
         children.add(newPart);
         partService.showPart(newPart, PartState.ACTIVATE);
       }
...