سؤال

أنا على دراية بـ nunit لاختبار الوحدة لطبقة الأعمال، لكنني أتطلع الآن إلى أتمتة اختبار طبقة واجهة المستخدم الرسومية لنماذج الفوز.

لقد رأيت واتين ومسجل watin لأتمتة الاختبارات على تطبيق الويب من خلال الوصول إلى عناصر التحكم وأتمتتها.ومع ذلك فأنا أجد صعوبة في العثور على معادل واتين لنماذج Windows (مكتوب بلغة c# أو vb.net) ويفضل أن يكون مفتوح المصدر.

هل يوجد منتج واحد أم أن جميع المنتجات تعتمد على تسجيل ضغطات الماوس ولوحة المفاتيح؟

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

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

المحلول

الدفع http://www.codeplex.com/white و http://nunitforms.sourceforge.net/.لقد استخدمنا المشروع الأبيض بنجاح.

نفس الإجابة على السؤال السابق

يحرر

تم نقل المشروع الأبيض وهو موجود الآن جيثب كجزء من TestStack.

نصائح أخرى

اكتمل اختبار ضمان الجودة الآلي هو تطبيق اختبار جيد لأتمتة اختبار واجهة المستخدم الرسومية.وهو يدعم أكثر من مجرد Windows Forms أيضًا، لذا يمكنك إعادة استخدامه لتطبيقات أخرى.إنه ليس مفتوح المصدر وهذا أفضل ما وجدته.لم أر مصدرًا مفتوحًا يعادل WatiN.لديها نسخة تجريبية مجانية، لأنك تقرر ما إذا كنت ترغب في ذلك أم لا.السبب الرئيسي الذي دفعني لاستخدامه هو أنه فعال من حيث التكلفة مقارنة بتطبيقات الاختبار الأخرى.

كبديل جديد، يمكنني أن أقدم لك FlaUI (https://github.com/Roemer/FlaUI).إنها في الأساس إعادة كتابة كاملة للون الأبيض مع المزيد من الميزات وقاعدة تعليمات برمجية نظيفة.

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

لقد أصدرت Microsoft المصدر إلى UI Automation، لذلك إذا لزم الأمر، يجب أن تكون قادرًا على تصحيح الأخطاء مباشرة أسفل المجموعة بأكملها إذا لزم الأمر.

الشيء الرائع حقًا هو أنه مع تكلفة الترخيص، يمكنك توسيع نطاق وتشغيل أي عدد تريده من الأجهزة للتنفيذ.

نحن نعمل داخل VSTS ونربط نتائجنا بالمتطلبات، ولكن يمكنك استخدام c# Express وnUnit والحصول على أدوات ولغات من الدرجة الأولى مقابل تكلفة قليلة أو بدون تكلفة.

فيما يلي بعض الروابط من مجلة MSDN حول رمز الاختبار التلقائي:

  • باستخدام UIAutomation قاتل الحشرات مارس 2007
  • باستخدام بوويرشيل اختبار المدى ديسمبر 2007
  • جهاز اختبار، أداة مساعدة لتسجيل نقرات الماوس وضغطات المفاتيح، ثم تشغيلها مرة أخرى وفحص سلوك البرنامج.ممتاز للتعليمات البرمجية غير المُدارة.يستخدم مقابض Windows لذلك قد لا يعمل بشكل جيد مع التعليمات البرمجية المُدارة. قاتل الحشرات مارس 2002.

يمكنك التحقق من Microsoft أتمتة واجهة المستخدم نطاق.لقد تم تضمين هذا في .NET منذ الإصدار 3.0.هذا هو في الواقع ما يستخدمه الإطار الأبيض على أي حال.

قد تفكر في استخدام واجهة المستخدم المشفرة, وهي إحدى ميزات Visual Studio المضمنة وجزء من أتمتة واجهة المستخدم:

تُعرف الاختبارات الآلية التي تقود تطبيقك من خلال واجهة المستخدم الخاصة به (UI) باسم اختبارات واجهة المستخدم المشفرة (CUITs).وتشمل هذه الاختبارات الاختبار الوظيفي لعناصر التحكم في واجهة المستخدم.يتيحون لك التحقق من أن التطبيق بأكمله ، بما في ذلك واجهة المستخدم الخاصة به ، يعمل بشكل صحيح.تعد اختبارات واجهة المستخدم المشفرة مفيدة بشكل خاص عندما يكون هناك التحقق من صحة أو منطق آخر في واجهة المستخدم ، على سبيل المثال في صفحة الويب.كما أنها تستخدم بشكل متكرر لأتمتة اختبار يدوي موجود.

...] قد تكون تجربة التطوير النموذجية تجربة ، في البداية ، تقوم ببساطة ببناء تطبيقك (F5) والنقر عبر عناصر التحكم في واجهة المستخدم للتحقق من أن الأمور تعمل بشكل صحيح.قد تقرر بعد ذلك إنشاء اختبار مشفر بحيث لا تحتاج إلى متابعة اختبار التطبيق يدويًا.اعتمادًا على الوظيفة المعينة التي يتم اختبارها في التطبيق الخاص بك ، يمكنك كتابة رمز إما لإجراء اختبار وظيفي ، أو لاختبار التكامل الذي قد يتضمن أو لا يتضمن الاختبار على مستوى واجهة المستخدم.إذا كنت ترغب ببساطة في الوصول مباشرة إلى بعض منطق العمل ، فيمكنك ترميز اختبار الوحدة.ومع ذلك ، في ظل ظروف معينة ، قد يكون من المفيد تضمين اختبار ضوابط واجهة المستخدم المختلفة في التطبيق الخاص بك.يمكن أن يؤدي اختبار واجهة المستخدم المشفرة إلى أتمتة سيناريو (F5) الأولي ، والتحقق من أن Code Churn لا يؤثر على وظيفة التطبيق الخاص بك.

اقرا المزيد من: https://docs.microsoft.com/en-us/visualstudio/test/use-ui-automation-to-test-your-code

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