Я пытаюсь использовать SWTBot в нашем собственном приложении. Я пытаюсь использовать SWTBot Recorder, чтобы сначала создать свои тестовые примеры. Но я столкнулся с несколькими проблемами.SWTBot Recorder Сгенерированный код не является абсолютным
У меня есть два вопроса. Пожалуйста, ознакомьтесь с комментариями, которые я упомянул в каждом из них ниже.
У меня есть вид на стол. Он содержит данные, которые я импортировал из файла csv. Ниже приведен код, который SWTBot дал мне.
bot.menu("File").menu("New...").click(); bot.tree().getTreeItem("AppName").select(); bot.tree().getTreeItem("AppName ").select(); bot.textWithLabel("IP Version:").setText("Sample"); bot.text(1).setText("App"); bot.text(2).setText("1"); bot.textWithLabel("*").setText("Hello"); bot.button("Finish").click(); bot.tree().getTreeItem("Sample").expand(); bot.tree().getTreeItem("Sample").getNode("App(1)").expand();
bot.tree().getTreeItem("Sample").getNode("App(1)").getNode("Hello").select();
bot.contextMenu("Open Application Metadata File").click(); // I choose the location of my .csv file – which is also not recorded in this. bot.text().setText("3.35"); //Edited data from the table – No mention of which row and which column. bot.text().setText("3.3"); bot.text().setText("Synthesiss");
Есть ли способ, чтобы упомянуть, какую строку и какой столбец таблицы я имею дело сейчас?
У меня есть
SashForm
с двумя композитами. Каждый композит содержит сетку почти одинаковых данных и одинаковых имен кнопок. Когда я пытаюсь запуститьSWTBot
Recorder и попытаюсь щелкнуть по сетке, он не говорит, с какой сетью я сейчас сталкиваюсь. Ниже приведен код, который был создан.bot.menu("AppName").menu("Open Config").click(); bot.button("Load").click(); //clicked from Composite 1 bot.button("Load").click(); //clicked from Composite 2 bot.tree().getTreeItem("").select(); //clicked from Grid of Composite 1 – Text not detected bot.tree().getTreeItem("").select();//clicked from Grid of Composite 1 – Text not detected bot.menu("QConnect+").menu("Close Config").click();
Можно с SWTBot
найти который Композитный я имею дело с? Этот SashForm
есть внутри вкладки, как, например, “Package Explorer”
, например. Как SWTBot
идентифицирует вкладку, с которой она сейчас связана.
Испытание произведено SWTBot
абсолютным? Пожалуйста, дайте мне знать, если есть решение для них и где я могу его найти.
Я отправил на адрес электронной почты SWTDev и получил ответ. - 1. У рекордера нет правил для правильной обработки таблиц. Пожалуйста, откройте ошибку, чтобы запросить ее, с ожидаемым выходом в этом случае, и подумайте о том, чтобы внести необходимое правило (см. Http://git.eclipse.org/c/swtbot/org.eclipse.swtbot.git/tree/org. eclipse.swtbot.generator/src/org/eclipse/swtbot/generator/framework/rules/simple/ExpandTreeItemRule.java в качестве примера): https://wiki.eclipse.org/SWTBot/Contributing - Микаэль Истрия – Jeevan
2. Это может быть также ограничение или недостающее правило. Какой код вы ожидаете от генератора для создания (опираясь на существующий API SWTBot)? - Микаэль Истрия – Jeevan
Являются ли тесты, произведенные SWTBot абсолютными? Состояние вашего приложения, когда вы начинаете запись, может повлиять на генерируемый код. Например, первоначальный выбор и активные виды могут заставить рекордер пропустить правила выбора и активации. Таким образом, эти тесты не являются абсолютными, но более похожими на состояние вашего приложения при начале записи. - Mickael Istria – Jeevan