سؤال

نحن نختار نظام اختبار القبول الآلي للبدء في استخدام (التبديل) في شركتنا. حاليا معظم حالات الاختبار الخلفية مكتوبة من خلال اختبارنا السابق في بيثون والخصوصية الجديدة يصعب استخدامها والحفاظ عليها؛ بالنسبة ل UI، نستخدم إطار روبوت .

أود استخدام شيء ما معيار بحيث يمكن بدء "الاختبار النموذجي النموذجي من الشارع" استخدام وحتى الآن يجب أن يكون مرنا للغاية.

تستخدم

في فرصتي السابقة، استخدم Soapui أو حتى Apache Jmeter مع البرمجة النصية المزودة، ولكن لسبب ما الأشخاص في شركتي الحالية لا يحبون ذلك.

نحن نفكر في filme أو إطار الروبوت.

المتطلبات:

  • يجب استخدامه لكلا الخلفية (بقية API، بعض الشيكات DB) واختبار واجهة المستخدم
  • يجب أن تستخدم لغة بسيطة حتى يتمكن معظم غير مبرمجين / اختبار فهم حالات الاختبار (يجب أن يكون أصحاب المنتجات قادرا على معرفة ما إذا كانت جميع معايير القبول مغطاة)
  • يجب أن يدعم التكامل مع Jenkins
  • يجب أن يدعم نسخة من حالات الاختبار بحيث يمكننا أيضا إصدار منتج معين أيضا التحقق من حالات الاختبار ذات الصلة الآن نحن نستخدم Testrail (إدارة حالة الاختبار SW)؛ لذلك سيكون لطيفا إذا كان يدمجا معها (على الأقل من الممكن برمجة ذلك، لذا أرسل نتائج الاختبار هناك) أو يستبدلها بالكامل

لعبت بسرعة فقط مع Filmne ولي شكل جدول يبدو قبيحا جدا. أيضا في النظرة الأولى، فإن الوثيقة ليست كبيرة (لم أجد الأوامر "ممكنة"، على سبيل المثال التأكيدات، بعض الحلقات) والوثائق على سبيل المثال Restfixture أسوأ (لا شيء).

أيضا لم أر أي تركيبات لشيكات DB. لذلك في النهاية يحتاج المطور إلى المشاركة في البرنامج والحفاظ على بعض التركيبات المخصصة، والتي تبدو لي أسوأ أن تستخدم جناح اختبار Python نمت في المنزل.

أي أفكار، تجربة؟

شكرا، radek

ps: سألت هذا السؤال أيضا في منتدى ضمان الجودة، لكنه أقل نشاطا بكثير من Stackoverflow، آسف جدا لهذا الازدواجية.

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

المحلول

لا أستطيع التحدث مع استخدام Filmee، ولكن إطار الروبوت يلتقي كل الأشياء التي تطلبها و أكثر. اخترت ذلك لأسبابي التالية:

  1. يمكنك استخدام أداة واحدة (وبالتالي بتنسيق إعداد التقارير واحد) ل الصابون - و بقية خدمات -Based، التحقق من صحة قاعدة البيانات، اختبار واجهة المستخدم المستند إلى الويب ، وحتى اختبار تطبيق سطح المكتب . يمكن استخدامه أيضا في اختبارات التكامل والوحدة، على الرغم من أن هناك أدوات أفضل في هذه الوظيفة.
  2. يمكنك استخدام اختبارات الروبوت لتنفيذ الاختبارات اليدوية باستخدام مربعات الحوار المكتبة، أو مخصص مكتبة. لقد رأيت تسريعا كبيرا في الإنتاجية في الاختبار عند تشغيل الاختبارات اليدوية المكتوبة في الروبوت من عند تشغيل اختبارات مماثلة مكتوبة في Microsoft Word. لسوء الحظ، لا يوجد مكتوب كثيرا على الويب حول هذه الميزة القوية، ولكن يمكنك الحصول على نفس النوع من الإبلاغ، وتحويل الإصدار، ووضع العلامات، وما إلى ذلك. ميزات جميع اختبارات القبول الخاصة بك، كلا اليدين والأتمتة.
  3. إذا كنت تستثمر الوقت في إنشاء مكتبة كلمات أساسية جيدة، يمكن أن تكون الاختبارات قابلة للقراءة بسهولة (ويمكن الكتابة!) من قبل غير اختبار
  4. هناك Robot Plugin ل Jenkins يجعل التصفح نتائج الاختبار سهلة
  5. أجنحة اختبار Robot Framework هي ملفات نصية عادية ، لذلك يمكن إرسالها مباشرة إلى جانب التعليمات البرمجية الخاصة بك.
  6. إخراج الاختبار هو بسيط جدا لفهم وتحليل ملف XML. يمكن أن تولد أيضا إخراج نمط XUNIT للتكامل مع أدوات أخرى. يأتي الروبوت أيضا مع أدوات لتحويل هذا XML إلى سجلات وتقارير صديقة للإنسان. the واجهة المستمع يجعل من السهل التقاط نتائج اختبار مباشر أو تيار وبعد
  7. هناك عدد متزايد من أدوات الإضافات هذا العمل مع الروبوت، لذلك يمكن لأعضاء فريقك استخدام الأدوات التي هم أكثر راحة معها.
  8. الروبوت هو يمكن توسيع نطاقها مكتوبة بأي لغة تقريبا - أصلي في بيثون، وكذلك جافا إذا كنت تعمل مع Jython، أو لغات .net إذا كنت تعمل مع IronPython. ومع واجهة مكتبة عن بعد ، يمكنك كتابة الكلمات الرئيسية في أي اللغة التي يمكن أن تفتح مقبس وتكون بمثابة خادم.
  9. كما بالنسبة للتركيبات الخاصة باختبارات DB، هناك عام مكتبة قاعدة البيانات المستندة إلى Java ، وجنة مكتبة قاعدة البيانات المستندة إلى Python يمكن الاتصال بأي قاعدة بيانات شائعة وبعد هناك أيضا مكتبة على وجه التحديد للتحدث مع mongodb .

    المتعلقة بالسؤال الذي كان لديك حول الإصدار، يحتوي الروبوت على وضع العلامات آلية التي قد تجدها مفيدة. يمكنك، على سبيل المثال، علامة كل الاختبارات مع إصدار المنتج الذي يذهبون إليه. ثم، أنت فقط تحقق من كل شيء ولكن استخدام الروبوتات خيارات سطر الأوامر < / a> لتحديد الاختبارات فقط الموسومة بنسخة معينة. كمنفعة جانبية لوضع العلامات، تقترح التقارير إحصاءات المرور / الفشل حسب العلامة.

    Robot ليس نظام اختبار مثالي، لكنه جيد جدا. أود أن أجادل أن هناك العديد من أطر اختبار جيدة على قدم المساواة، لكنني لست متأكدا من أن هناك أي شيء أفضل بشكل موضوعي. بالتأكيد للأشياء التي أدرجتها مهمة بالنسبة لك، فإن إطار الروبوت يفعل كل ما تحتاجه.

نصائح أخرى

كنت في سيناريو مماثل تقريبا في وقت سابق. كان علينا أن نقرر بين شركة RF، FITMONE و IBM's Staf / Stax

اخترنا إطار روبوت وعمل جيدا.

  1. يجب أن تستخدم لكلا الظهر (بقية API، بعض الشيكات DB) و UI اختبار - للراحة، RF طلبات مكتبة جنبا إلى جنب مع مكتبات DB المختلفة يمكن استخدامها معا.
  2. يجب أن تستخدم لغة بسيطة حتى يمكن حتى غير المبرمجين / اختبار فهم حالات الاختبار (يجب أن يكون أصحاب المنتجات قادرا على رؤية ما إذا كانت جميع معايير القبول مغطاة) - تهدف RF إلى القيام بذلك بدقة.
  3. يجب أن يدعم التكامل مع Jenkins - RF لديه Jenkins البرنامج المساعد
  4. يجب أن يدعم نسخة من حالات الاختبار بحيث تكون خاصة نسخة المنتج يمكننا أيضا التحقق من حالات الاختبار ذات الصلة الآن - RF's العلامات

    موجود إطار روبوت API ، لذلك برمجة قابلة للبرمجة تماما حسب متطلبات التكامل.

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