فشل تشغيل MSTest لأن التجميع المصدر غير موثوق به

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

  •  03-07-2019
  •  | 
  •  

سؤال

لقد أضفت للتو xUnit إلى مشروعنا الاختباري (بالنسبة للتأكيدات، ما زلنا نستخدم MSTest كإطار عمل) وعلى الفور رفضت عمليات التشغيل الاختبارية تنفيذ أي من الاختبارات.هذه هي رسالة الخطأ:

فشل تشغيل الاختبار في قائمة الانتظار '{ ....} "اختبار تشغيل التشغيل:موقع الملف أو الدليل "... xunit.dll" غير موثوق به.

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

المحلول

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

والأساس، والإصلاح invovles النقر بزر الماوس الأيمن على ملف DLL (xunit.dll على سبيل المثال) في مستكشف ويندوز، والذهاب إلى خصائص، والنقر على "إلغاء الحظر" في الجزء السفلي من علامة التبويب بجانب النص "الأمان". ويبدو أن ويندوز فيستا / ويندوز 2008 سيمثل المجالس التي تأتي من أجهزة أخرى أو الإنترنت بأنها غير آمنة تلقائيا.

وكما ذكر أحد المعلقين الزوجين، قد تحتاج أيضا إلى إعادة تشغيل Visual Studio لهذا سارية المفعول.

نصائح أخرى

في فريقي كان لدينا نفس المشكلة.

والحل الخاص بك لم تنجح، ولكن <لأ href = "http://blogs.msdn.com/charles_sterling/archive/2008/06/03/the-test-engine-cannot-run-tests-in- و-التجميع اختبارات دلل لأن الحركة والتجمع ووليس بشكل كامل موثوق بها كل صافي إطار الأمن policy.aspx "يختلط =" noreferrer "> هذا المنصب من قبل تشارلز الاسترليني فعل مساعدة.

واستخدمنا السطر التالي:

caspol -machine -addgroup 1 -url file://\\server/share/* FullTrust -name DevShare

بعد مواجهة هذه المشكلة وقضاء ساعات طويلة في محاولة جعل "إلغاء الحظر" يستمر لفترة أطول من بضع دقائق و/أو اكتشاف ذلك كاسبول ولكن دون جدوى، لقد وجدت أخيرًا معلومة صغيرة عبر Google مفادها أنه سيتم حظر التجميعات مرة أخرى في المرة التالية التي تقوم فيها بإنشاء المشروع أو إعادة بنائه، حيث يتم إعادة نسخها من موقع مصدرها الأصلي.(أعتقد أنني لم ألاحظ أن هذا قد حدث من قبل مع تجميعات المراجع، ولكن على أي حال ...)

كان الإصلاح الخاص بي لهذا هو ما يلي:

  1. انسخ جميع DLLs المطلوبة إلى مكان آخر للحفظ الآمن

  2. قم بإزالة المراجع في Visual Studio

  3. حذف جسديًا DLLs في مجلد BIN

  4. قم بإلغاء حظر DLLs بشكل فردي في المكان الذي تم فيه نسخهم

  5. أضف المراجع مرة أخرى في Visual Studio من بقعة الحجز

عملت كل عملية بناء أو إعادة بناء لاحقة بشكل جيد بعد ذلك.

عند تشغيله على جهاز XP (حتى مع تثبيت .NET 3.5 SP1)، لم أتمكن من تشغيل أي من الحلول الأخرى المدرجة هنا.

ولكن العمل من نفسه مشاركة من قبل تشارلز ستيرلنج التي يشير إليها ديفي لاندمان، لقد نجحت أخيرًا في هذا الاختلاف:

  1. قم بتشغيل أداة تكوين .NET 2.0 (الإعدادات...لوحة التحكم...الأدوات الإدارية...تكوين .NET Framework 2.0)
  2. انقر لأسفل إلى "جهاز الكمبيوتر ..."سياسة أمان وقت التشغيل...آلة ...مجموعات التعليمات البرمجية...كل الكود"
  3. قم بإنشاء مجموعة رموز جديدة بشرط العضوية "Zone" = "Local Intranet" وقم بتعيين مجموعة الأذونات "FullTrust"
  4. أعد تشغيل Visual Studio

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

يحرر:كما هو موضح في هذه الإجابة, ، قد تحتاج إلى تثبيت .NET SDK (الذي يختلف عن .NET Framework) حتى تتمكن من الحصول على أداة تكوين .NET 2.0 على نظامك.

وكان لي نفس المشكلة مع موك. ولكن لن "الحظر". في كل مرة كنت الافراج عنها، كان لا يزال تصدى لل!؟!؟

وكان لي لكسر الجمود في ملف مضغوط الأصلي I تحميلها. ثم نسخ DLL من ملف مضغوط مرة أخرى. يعمل بعد ذلك.

وقد يبدو واضحا حقا الآن، ولكن عندما كنت النقر تحريك ملف تم تعيين للقراءة فقط.

وبعد ذلك فقط السمة، وتطبيق، ثم تحديد إلغاء الحظر لم أكن في الواقع الحصول على هذا العمل-التحقق من الامم المتحدة.

وتعطي أن الذهاب.

:)

وPS: أنا أيضا حذف كافة القديمة دلل في مجلد بن بلدي، فقط للتأكد البصرية ستوديو لم التقاط القديم

واجهت نفس المشكلة مع ملفات DLL التي تم تنزيلها والمحظورة بواسطة نظام التشغيل Vista.أنت بحاجة إلى حقوق المسؤول للحصول على زر "إلغاء الحظر" الموجود في خصائص الملف.أنا ما عليك سوى استبدال ملفات DLL بأحدث إصدار من التحكم بالمصادر (TFS) حيث ارتكبتهم من قبل.

  • اذهب إلى file
  • انقر بزر الماوس الأيمن واختر Properties
  • في التسجيل الأول اضغط على Allow

وكما أنني حاولت فتح الملف في المفكرة ++ وتسميته. قليلا نهج مختلف، ولكن لأنها عملت لي. نظام الملفات المحلي ثم اعتقد انه يأتي من نفس الجهاز.

وانها ليست مجرد moq.dll التي تحتاج إلى رفع الحجب. يتضمن أحدث ملف مضغوط على moq.xml وmoq.pdb ملف - الرجوع إلى دلل نسخ هذين الملفين أخرى إلى المجلدات بن لكذلك. وإذا كان كل ثلاثة لم يتم الافراج عنها والاختبارات لا تعمل، وجدت.

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