السيلينيوم: كيف يمكنني استخدام جافا سكريبت لمسح قيمة من حقل نموذج؟

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

سؤال

وأنا باستخدام 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 لاستخدام لاغية فارغة و.

:)

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