السيلينيوم: كيف يمكنني استخدام جافا سكريبت لمسح قيمة من حقل نموذج؟
-
06-07-2019 - |
سؤال
وأنا باستخدام IDE السيلينيوم والمباراة جسر السيلينيوم Fitnesse وأنا أحاول لاختبار أنني عندما مسح قيمة افتراضية من حقل نموذج، يعرض شكل لي رسالة خطأ.
وهكذا عندما أسجل مع IDE السيلينيوم، ما تقوم به هو ما يعادل يقول السيلينيوم لكتابة أي شيء.
| type | text_field | |
والمشكلة مع ذلك هو أن المباراة Fitnesse أنا باستخدام يتوقع أن الحجة الثانية أن لا يكون لاغيا.
هل هناك طريقة في السيلينيوم إلى "مسح قيمة" بدلا من "كتابة أي شيء"؟
المحلول 2
ولقد استخدمت هذا للحصول على عمل. reg_start_date
هو معرف حقل إدخال بلدي.
| storeEval | window.document.getElementById('reg_start_date').value = '' |
ومن الإشارة السيلينيوم:
<اقتباس فقرة> لاحظ أن افتراضيا، سيتم تشغيل قصاصة في سياق "السيلينيوم" الكائن نفسه، لذلك سوف this
تشير إلى كائن السيلينيوم. استخدام window
للإشارة إلى إطار التطبيق الخاص بك، على سبيل المثال، window.document.getElementById('foo')
وأيضا، وتجنب التفاف شفرة جافا سكريبت مع جافا سكريبت {}، فإنه لن ينجح.
نصائح أخرى
ويمكنك القيام بذلك عن طريق جافا سكريبت على هذا النحو:
| verifyEval | javascript{this.browserbot.getCurrentWindow().document.getElementById('CONTROL_ID').value = ''} ||
وفعال البيان verifyEval يسمح لك لتنفيذ أي قطعة من جافا سكريبت التي ترغب. يجعل بعض مشاكل يصعب تحقيقه مع السيلينيوم أبسط من ذلك بكثير.
هذا البرنامج التعليمي (واليوم صدق أو لا تصدق) لمعرفة الأشياء بها.
وكان لدينا هذه المسألة في البداية أيضا. جرب: | اكتب | text_field | فارغا |
وابحث عن مزيد من المعلومات حول وثائق Fitnesse لاستخدام لاغية فارغة و.
:)