كيفية تشغيل وتصحيح اختبارات nunit في Visual Studio 2008 على نظام التشغيل Windows 7 64 بت؟

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

سؤال

لقد قمت باستبدال جهاز التطوير الخاص بي (WinXP/32bit) بجهاز جديد (Windows 7/64bit).أواجه الآن مشكلة في تشغيل اختبار NUnit من داخل Visual Studio 2008.أنا أستخدم أحدث إصدار من TestDrivenNet.

ما أبحث عنه هو إما:

  • أ) كيفية جعل TestDrivenNet يعمل على Win7/64
  • ب) البحث عن اقتراح لعداء اختبار بديل.يفضل واحد مجاني.

ما الذي يعمل على WinXp/32 (ولا يعمل على Win7/64):

  • قم بتشغيل طريقة اختبار واحدة داخل VS.NET
  • تصحيح طريقة اختبار واحدة داخل VS.NET
  • تشغيل جميع الاختبارات في فصل واحد داخل VS.NET

الأعراض على Win7/64:

  • عند محاولة تشغيل الاختبار، يفيد العداء "0 ناجح، 0 فشل، 0 تم التخطي".يبدو أنه غير قادر على العثور على أي اختبارات في صفي.
  • تم اختباره باستخدام TestDriven.NET-2.22.2468 (RTM) و2.23.2497 (بيتا).نفس النتائج.

سؤال:

  • هل يمكنك اقتراح عداء اختبار nunit جيد لـ Win7/64؟يفضل البديل المجاني.
  • هل هناك أي اقتراحات حول كيفية تشغيل عداء testdriven.net؟
هل كانت مفيدة؟

المحلول 2

واجه زميلي في العمل نفس المشكلة تمامًا وهو قادر على تقديم الحد الأدنى من الإصلاح هذه المرة.أعيد نشرها هنا - ربما ستساعد شخصًا آخر أيضًا.

يبدو أن السبب الجذري للمشكلة هو Source Gear Vault 3.5.x.انظر بهم مشاركة منتدى الدعم للتفاصيل.

إرسال التعليمات البرمجية التالية إلى التسجيل أدى إلى حل مشكلة TD.NET التي لا تعمل:

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}]
@="IServiceProvider"
[HKEY_CLASSES_ROOT\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\NumMethods]
@="4"
[HKEY_CLASSES_ROOT\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\ProxyStubClsid32]
@="{A4A1A128-768F-41E0-BF75-E4FDDD701CBA}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}]
@="IServiceProvider"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\NumMethods]
@="4"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\ProxyStubClsid32]
@="{A4A1A128-768F-41E0-BF75-E4FDDD701CBA}"

نصائح أخرى

أنا أستخدم win7 64 بت مع TD.NET 2.22.246 وهو يعمل بشكل جيد.برامج تشغيل Visual Studio الأخرى الوحيدة الموجودة هي mstest (يتم تشغيلها كعملية 32 بت فقط) و TestMatrix (ليس حر)

للتحقق مما إذا كانت المشكلة 64 بت، يمكنك إنشاء مشروع الاختبار كـ x86 وإجراء الاختبارات باستخدام TD.NET.في هذه الحالة، سيتم تشغيل TD.NET كعملية 32 بت - يمكنك التحقق من ذلك باستخدام إدارة المهام والنظر إلى ProcessInvocation.exe

إذا تم تشغيل الاختبارات من إصدار 64 بت.إذا فشلت فربما تكون المشكلة في مكان آخر.هل تستخدم أدوات أخرى في اختباراتك؟التغطية والسخرية الخ، ربما المشكلة في مكان آخر؟

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