معالجة مربعات حوار SWT أثناء تشغيل الاختبارات في وضع مقطوع الرأس باستخدام Swtbot

StackOverflow https://stackoverflow.com/questions/1907646

سؤال

أقوم بتشغيل حالة اختبار Junit على تطبيق Eclipse الخاص بي الذي تم بناؤه باستخدام SWT. أقوم باختبار واجهة المستخدم الرسومية باستخدام Swtbot. حتى هنا هو مشكلتي:

editor.bot().button("Make Excel Template").click();

يساعدني هذا الرمز في توليد قالب في طلبي. بمجرد الانتهاء، يرمي مربع حوار مشروط مع "موافق" كرسالة. ومع ذلك، لا يمكنني الحصول على SWTBOT للعثور على مربع زر الزر / القطعة / القطعة. استمر في الحصول على "widgetnotfoundException".

هل صادف شخص ما هذا؟ يقول المحتوى الرسمي على موقع الويب SWTBOT أنه يجب تشغيل مربعات الحوار في مؤشرات الترابط غير واجهة المستخدم المنفصلة. ومع ذلك، فإن الأمثلة المقدمة ومع ذلك، ليست مفيدة للغاية.

نقدر مساعدتكم!

هل كانت مفيدة؟

المحلول 2

Carstenlez - الحل الخاص بك يعمل بشكل جيد في مربعات حوار JFACE. ومع ذلك، فإن تطبيقي هو الاستفادة من صندوق message - وهو مربع حوار الأصلي. لا يدعم Swtbot الحوار الأم، لذلك أنا خارج خيارات كبيرة.

نصائح أخرى

أولا يجب عليك تشغيل الاختبارات الخاصة بك في مؤشر ترابط غير واجهة المستخدم (إن لم يكن الأمر كذلك). ثانيا، يمكنك استخدام شرط لانتظار ظهور مربع الحوار المشروط الخاص بك بعد تنفيذ الإجراء الذي سيجلب الحوار "

bot.waitUntil(Conditions.shellIsActive("This is the title of the modal dialog "));
bot.button("OK").click();

هذا حل مشاكل توقيتنا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top