جسر السيلينيوم للياقة البدنية: كيف أقوم بتخزين وأردد متغير؟

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

سؤال

أنا أستخدم جسر الجسر السيلينيوم للياقة البدنية من أجل كتابة اختبارات في اللياقة البدنية للسيلينيوم. إنه رائع لأنه يغطي الكل الوظائف التي لدى السيلينيوم. ومع ذلك ، فإن المشكلة التي أركض فيها هي تخزين المتغيرات كما أود في سيلينيوم IDE.

| !- fixtures.SeleniumFixture -!|
| setup | http://www.google.com/ | *chrome /usr/lib/firefox-3.0.5/firefox |
| open | http://www.google.com/ |  |
| storeLocation | here | |
| echo | ${here} |  |

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

| storeLocation | here |  |
| echo | undefined variable: here |  |

هذا فقط لا معنى له. أقوم بتحديد المتغير للخط قبل أن أردده. عندما أقوم بإجراء الاختبار ، أحصل على:

| storeLocation | here |  |
| echo | undefined variable: here | undefined variable: here |

المؤلف يفعل نفس الشيء مع اختباراته. لماذا لا يعمل هذا بالنسبة لي؟

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

المحلول

المشكلة هي أن اللياقة تتعلق بالارتباك. يعتقد أنك لا تحدد متغير.

!define variable {variable}
| echo | ${variable} |  |

طريقة الالتفاف حول الالتباس في Fitnesse هي الهروب من الاسم المتغير عن طريق المحيط به! - -!.

| storeLocation | here | |
| echo | ${!-here-!} |  |

هذا سوف يردد الآن الاستجابة المطلوبة.

| !- fixtures.SeleniumFixture -!|
| setup | http://www.google.com/ | *chrome /usr/lib/firefox-3.0.5/firefox |
| open | http://www.google.com/ |  |
| storeLocation | here | |
| echo | ${here} | http://www.google.com |
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top