هل هناك أي أطر لأتمتة الويب .NET تدعم تنفيذ الاختبار بلا رأس؟

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

سؤال

مشابه ل htmlunit., ، ولكن للاستخدام مع C #. لقد رأيت أنه يمكنك استخدام htmlunit مع .NET عبر ikvm, ، ولكن أود حل أصلي إذا كان ذلك ممكنا.

الهدف هو إضافة اختبارات UI إلى اختباراتنا الحالية (xunit.net) التي يتم تشغيلها على خادم CI. أود أن أكون قادرا على تشغيل اختبارات UI في الذاكرة (نظرا لأنني لا أريد أن أفتح مثيلات المستعرض على جهاز ليس لدي أي تحكم)، دون أي تبعيات على الأجهزة الأخرى (كما كان مطلوبا إذا كنت قد استخدمت السيلينيوم rc., ، علي سبيل المثال).

هل يعرف أحد وسيلة لتحقيق ذلك؟

تحديث: السيلينيوم 2. يوفر الآن HTMLUNIT كأحد المتصفحات المدعومة. يجب أن يكون لدى أي شخص يريد استخدام HTMLUNIT دون الذهاب عبر IKVM إلقاء نظرة على السيلينيوم 2 بدلا من ذلك. لقد قمت بتحديث إجابتي أدناه لتعكس ذلك.

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

المحلول

بعد التجربة بضعة أطر، يبدو أن استخدام Selenium RC هو أفضل حل متاح. على الرغم من الرغبة في حل لا يعتمد على الأجهزة الخارجية، فإنه يبدو وكأنه كسب القدرة على تشغيل الاختبارات على إصدارات متعددة من نفس المتصفح هو التجارة الجيدة عن الطريقة.

تحديث: تنفيذ اختبار بلا رأس ل .NET الآن ممكن أيضا باستخدام السيلينيوم 2.. وبعد يوفر الكود الجديد (بعد دمجه باستخدام WebDriver) HTMLUNIT كأحد المتصفحات المدعومة.

نصائح أخرى

ربما واتين استطيع المساعدة؟

الإطار ليس بلا رأس لأنه لا يزال يستخدم كائن متصفح IE (مع FF في التنمية). ومع ذلك، يجب إنشاء كائنات المتصفح هذه قيد التشغيل، مما يعني أنه سيتم تنظيفها عند اكتمال عملية بناء CI، خاصة إذا تضع عملية بناء CI عملية منفصلة مثل Nant لإجراء اختبارات الوحدة بالفعل.

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