ভিজ্যুয়াল স্টুডিও 2015 বা 2017 ইউনিট পরীক্ষাগুলি আবিষ্কার করে না


165

সম্পাদনা 2016-10-19:

মূল প্রশ্নটি XUnit পরীক্ষা রানারকে নিয়ে VS2015 CTP6-তে নির্দিষ্ট কোনও সমস্যা সম্পর্কিত ছিল। উত্তরগুলি থেকে এটি স্পষ্ট যে ভিজ্যুয়াল স্টুডিওতে ইউনিট পরীক্ষা আবিষ্কারের সাথে অনেক বিস্তৃত সমস্যা রয়েছে যা বিভিন্ন পরিস্থিতিতে ঘটতে পারে। এটি প্রতিফলিত করতে আমি আমার প্রশ্ন পরিষ্কার করেছি ed

আমি আমার নিজের উত্তরে একটি স্ক্রিপ্টও অন্তর্ভুক্ত করেছি যা এখনও উপস্থিত থাকলে একই রকম সমস্যাগুলি সমাধান করার জন্য আমি আজও ব্যবহার করি।

অন্যান্য অনেক উত্তর ভিএস পরীক্ষার রানার জটিলতা আরও ভালভাবে বুঝতে সাহায্য করেছে pro আমি কৃতজ্ঞ যে মানুষ এখনও তাদের সমাধান ভাগ করে নিচ্ছে!


আসল প্রশ্ন 2015-04-10:

গতকাল থেকে, আমার ভিজ্যুয়াল স্টুডিও টেস্ট এক্সপ্লোরার আমার কোনও প্রকল্পের জন্য পরীক্ষা আবিষ্কার করবে না। এটি নির্মাণের পরে সবুজ লোডিং বারটি প্রদর্শন করে না।

আমি যখন ভিজ্যুয়াল স্টুডিও টেস্ট এক্সপ্লোরারগুলিতে যাই এবং "সমস্ত রান করুন" এ ক্লিক করি বা যখন আমি কোনও পরীক্ষার পদ্ধতিতে ডান ক্লিক করি এবং "রান টেস্টগুলি" নির্বাচন করি, তখন আমি আমার আউটপুট উইন্ডোতে নিম্নলিখিতটি পাই:

Could not load file or assembly 'Microsoft.VisualStudio.Web.ProjectSystem, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.

আমি উইন্ডোজ 10 ভিসুয়াল স্টুডিও 2015 অন্তর্গত CTP 6 দৌরাচ্ছি প্রো কারিগরী পূর্বরূপ, বিল্ড 10041. দ্য .NET ফ্রেমওয়ার্ক সংস্করণ কোন ব্যাপার বলে মনে হচ্ছে না - এটা ঘটে 4.0, 4.5.2এবং 4.6

আমি নিম্নলিখিত পরীক্ষামূলক ফ্রেমওয়ার্কগুলি দিয়ে চেষ্টা করেছি এবং সেগুলি সমস্ত একই আচরণ দেয়:

  • Microsoft.VisualStudio.QualityTools.UnitTestFramework v14.0.22609.0
  • xunit v2.1.0-beta1-build2945 সঙ্গে xunit.runner.visualstudio v2.1.0-beta1-build1051
  • NUnit v2.6.4 সঙ্গে NUnitTestAdapter v2.0.0

আমি গিটহাবের (xunit) তে একটি সমস্যা পেয়েছি যা একই রকমের বলে মনে হয়েছিল: xunit টিমের এই মন্তব্যে # 295 পরীক্ষা পাওয়া যায় না :

সচেতন থাকুন যে ভিজ্যুয়াল স্টুডিও 2015 সিটিপি 5 সাধারণভাবে ইউনিট টেস্টিং সহ অনেকেই (কেবল xUnit.net নয়) ভেঙে গেছে বলে জানা গেছে, সুতরাং এটি কাজ করার আশা করবেন না।

এছাড়াও, দয়া করে নিশ্চিত হয়ে নিন যে আপনি ভিজ্যুয়াল স্টুডিওর রানার ক্যাশে সাফ করেছেন। যদি এটি দূষিত হয়ে যায়, ভিজুয়াল স্টুডিও মুছে ফেলা না হওয়া পর্যন্ত স্থায়ীভাবে দুর্ব্যবহার করবে। ক্যাশেটি সাফ করতে, ভিজ্যুয়াল স্টুডিওর সমস্ত দৃষ্টান্ত বন্ধ করুন, তারপরে% TEMP% \ ভিজ্যুয়ালস্টুডিওস্টেস্ট এক্সপ্লোরার এক্সটেনশানগুলি মুছুন (সত্যি কথা বলতে,% TEMP% এ মুছে ফেলা সম্ভব নয়)

আমি তাদের পরামর্শটি ফোল্ডারটি মুছে ফেলার চেষ্টা করেছি %TEMP%\VisualStudioTestExplorerExtensions। দুর্ভাগ্যক্রমে সমস্যাটি স্থির হয়নি।

আমি লক্ষ্য করেছি যে ReSharper আসলে হয় কিছু পরীক্ষার আবিষ্কার করতে পারবেন। এটি কেবল ভিএস এবং নুনিট পরীক্ষার জন্য কাজ করে, xunit এর জন্য নয়।

আমাকে কিছু ধরণের টেম্প বা ক্যাশে ফোল্ডার সাফ করতে হবে, তবে আমি জানি ভিজ্যুয়াল স্টুডিওতে তাদের অনেকগুলি রয়েছে এবং তাদের সমস্ত অনাকাঙ্ক্ষিত পার্শ্ব-প্রতিক্রিয়া ছাড়াই মুছে ফেলা যায় না।


3
আমি এতে হোঁচট খেয়েছি বলে আমি খুব আনন্দিত, এটি আমাকে কেন তৃতীয় পক্ষের পরীক্ষামূলক রানার (আমার ক্ষেত্রে এনক্রাঞ্চ) ব্যবহার করছি তা মনে করিয়ে দেয়। আমি অনুরূপ কারণে বহু আগে ম্যাসেস্টে ছেড়ে দিয়েছি। অবশ্যই আপনি যদি এমস্টেস্টের সাথে আটকে থাকেন তবে এটির কোনও সমাধান নেই ...
অ্যাবেল


ভিএস 2017 সহ, অবিশ্বাস্যভাবে যথেষ্ট, আমার টেম্প এবং লোকালাপডাটা ভিএস2017 সম্পর্কিত ফোল্ডারগুলি পরিষ্কার করা, একটি ঘনিষ্ঠ + পুনরায় লোড + পরিষ্কার সমাধান এবং একটি উইন্ডোজ রিবুট সাহায্য করবে না didn't যাইহোক, আশ্চর্যের বিষয় হল, আমার কেবল একটি পরীক্ষার প্রকল্পের একটি সিম্পল "আনলোড - পুনরায় লোড করুন" প্রকল্পটি পরীক্ষার আবিষ্কারটিকে ঝুলন্ত থামাতে সহায়তা করেছিল। আমি তৃতীয় পক্ষের ইউনিট পরীক্ষা প্যাকেজটি ব্যবহার করি না।
প্যাক0

কিছু পিপিএলের জন্য এটি আকর্ষণীয় বা আরও প্রাসঙ্গিক হতে পারে (আমি উত্তর হিসাবে এটি যুক্ত করা উচিত বলে মনে করি না): টেস্ট এক্সপ্লোরারগুলিতে কোনও উত্স উপলব্ধ নেই - github.com/Mic Microsoft
testfx

এটি কারও জন্য stackoverflow.com/a/58019304/1566372
Rady

উত্তর:


154

আমার অবাক করার জন্য, এর মধ্যে অবস্থিত টেম্প ফাইলগুলি সাফ করে দেওয়া %TEMP% ডিরেক্টরিতে জন্য সমস্যাটি সমাধান করেছে।

দ্রষ্টব্য: এই পথটি সাধারণত হয় C:\Users\(yourusername)\AppData\Local\Temp

@ ওয়ারেন-পি অন্তর্ভুক্ত হিসাবে %temp%আপনি স্টার্ট মেনুতে রেখে টেম্প ফোল্ডারে নেভিগেট করতে পারেন , বা "ফাইল এক্সপ্লোরার" চালু করতে পারেন %temp%এবং ঠিকানা বারে প্রবেশ করতে পারেন ।


30
অথবা আপনি কেবল %TEMP%স্টার্ট রান মেনুতে টাইপ করুন এবং এটি টেম্পের মান কী তা অনুমান করেই আপনার জন্য টেম্পোর ফোল্ডারটি খুঁজে পায়।
ওয়ারেন পি

65
@ জেডকার্লোস %TEMP%ডিরেক্টরিতে গুরুত্বপূর্ণ ডেটা সঞ্চয় করে এমন কোনও অ্যাপ্লিকেশন কাজ করা বন্ধ রাখে।
মার্ক প্যাটিসন

25
আপনার জন্য কোনও বিব্রতকর ঘটনা নয়, এটি মাইক্রোসফ্টের সম্পূর্ণ ব্যর্থতা যে 1000+ মার্কিন ডলার আইডিই চালিয়ে যাওয়ার জন্য আপনাকে এই জাতীয় হাস্যকর পদক্ষেপ নিতে হবে।
মুশিপিস

8
আমার পক্ষেও ভিএস ২০১7-তে কাজ করেছেন!
লোরেন্টজ ভেদেলার

6
আপনি যদি পুরো টেম্প ডিরেক্টরিটি সাফ করার বিষয়ে উদ্বিগ্ন হন তবে কেবলমাত্র টেম্প \ ভিজ্যুয়ালস্টুডিওস্টেস্ট এক্সপ্লোরার এক্সটেনশানস সাব-ডিরেক্টরিটি সাফ করার ফলে সমস্যাটি ঠিক হয়ে গেছে বলে মনে হয়।
মাইক ওয়ালশ 0

90

এটি হতে পারে যে আপনার কোডটি x64 এর সাথে সংকলিত হয়েছে সুতরাং ডিফল্ট প্রসেসর আর্কিটেকচারকে এক্স 64 হিসাবে সক্ষম করতে হবে।

Test > Test Settings > Default Processor Architecture > X64

3
এটি আমাকে কয়েকবার কামড় দিয়েছে। এমনকি এত বছর পরেও আমি এখনও কোনও ভাল কারণ ভাবতে পারি না যে কেন ডিফল্টরূপে টেস্ট সেটিংসটি প্রকল্পের বর্তমান বিল্ড কনফিগারেশনের সাথে স্বয়ংক্রিয়ভাবে মেলে না। আমার কাছে কেবল অর্থহীন সদৃশ কনফিগারেশনের মতো মনে হচ্ছে।
নিউট্রিনো

1
উইন্ডোজ আপডেট এবং / বা ভিএস আপডেট আপনাকে না বলেই ডিফল্ট আর্কিটেকচার পরিবর্তন করে .... আআরর্গ
রুপউব

এবং 4 বছর পরে, এটি এখনও সহায়ক। ধন্যবাদ
অস্কার ও।

67
  • চেক আউট করুন, যদি NUnit টেস্ট অ্যাডাপ্টার 2/3 ভিজ্যুয়াল স্টুডিওতে ইনস্টল করা থাকে।
    (Tools>Extensions and Updates )

  • সঠিক প্রসেসরের আর্কিটেকচারটি চয়ন করা হয়েছে তা নিশ্চিত করুন:
    (Test>Test Settings>Default Processor Architecture)


2
অবশেষে আমার জন্য এটি কাজ করেছিল। অন্য সব চেষ্টা করার পরে।
ব্র্যাডস্টেল

এক্সটেনশন এমনকি ইনস্টল না করা অবস্থায় প্রথমে টেম্প ফোল্ডারগুলিতে চারপাশে খোঁড়াখুঁড়ি করার মতো আপনাকে বোধ করে। এই পোস্ট করার জন্য ধন্যবাদ।
নাইটওয়েল 888

2
আপনি সঠিক এক্সটেনশন ব্যবহার করেন কিনা তাও পরীক্ষা করে দেখুন। NUnit 2.x এবং NUnit 3.x এর জন্য পৃথক একটি রয়েছে
pmbanka

1
আপনি যখন .NET স্ট্যান্ডার্ডটিকে লক্ষ্য করছেন তখন আপনার ভিএসআইএক্স এক্সটেনশনের পরিবর্তে নুগেট প্যাকেজ NUnit টেস্ট অ্যাডাপ্টারটি ইনস্টল করতে হবে । github.com/nunit/docs/wiki/.NET-Core-and-.NET-Sandard
m93a

ভিএসআইএক্সের পরিবর্তে নুগেট থেকে NUnit3TestAdapter পাওয়ার চেষ্টা করুন। এটি আরও ভাল পন্থা
রাভেল্লা

33

সম্পাদনা 2016-10-19 (পাওয়ারশেল স্ক্রিপ্ট)

এই ইস্যুটি এখনও প্রতি এবং পরে ফিরে আসে। আমার জন্য প্রাসঙ্গিক ক্যাশে / টেম্প ফোল্ডার / ফাইলগুলি সাফ করে স্বয়ংক্রিয় করতে আমি একটি ছোট পাওয়ারশেল স্নিপেট লিখেছিলাম। আমি এটি ভবিষ্যতের পাঠকদের জন্য এখানে ভাগ করছি:

@(
"$env:TEMP"
"$env:LOCALAPPDATA\Microsoft\UnitTest"
"$env:LOCALAPPDATA\Microsoft\VisualStudio\14.0\1033\SpecificFolderCache.xml"
"$env:LOCALAPPDATA\Microsoft\VisualStudio\14.0\1033\ProjectTemplateMRU.xml"
"$env:LOCALAPPDATA\Microsoft\VisualStudio\14.0\ComponentModelCache"
"$env:LOCALAPPDATA\Microsoft\VisualStudio\14.0\Designer\ShadowCache"
"$env:LOCALAPPDATA\Microsoft\VisualStudio\14.0\ImageLibrary\cache"
"$env:LOCALAPPDATA\Microsoft\VisualStudio Services\6.0\Cache"
"$env:LOCALAPPDATA\Microsoft\WebsiteCache"
"$env:LOCALAPPDATA\NuGet\Cache"
) |% { Remove-Item -Path $_ -Recurse -Force }

আগেই ভিজ্যুয়াল স্টুডিও বন্ধ করে রাখার বিষয়টি নিশ্চিত করুন এবং এটির পরে পুনরায় বুট করা ভাল ধারণা।

টিএমপি ফোল্ডারটি মুছে ফেলা প্রয়োজন হবে না এবং কিছু ক্ষেত্রে এমনকি অনাকাঙ্ক্ষিতও হতে পারে, তাই আমি প্রথমে টিএমপি ফোল্ডারটি সাফ না করে চেষ্টা করার পরামর্শ দেব। শুধু বাদ দিন"$env:TEMP"

আসল উত্তর 2015-04-12

ভিজ্যুয়াল স্টুডিও সম্পর্কিত টেম্প / ক্যাশে ফোল্ডারগুলি পুঙ্খানুপুঙ্খভাবে পরিষ্কার করার পরে সমস্যাটি "সমাধান করা" হয়েছিল।

যেহেতু আমার কাছে একে একে সব কিছু করার এবং তারপরে পরীক্ষার সময় ছিল না, তাই দুর্ভাগ্যক্রমে আমি জানি না যে আসলে কোনটি সমস্যাটি সৃষ্টি করেছিল।

এই হ'ল সঠিক পদক্ষেপগুলি:

  1. বন্ধ ভিজ্যুয়াল স্টুডিও
  2. সিস্টেম এবং ব্রাউজার tempফাইল / ফোল্ডারগুলি সাফ করতে সিসিলিয়নার ব্যবহার করা হয়েছে
  3. ম্যানুয়ালি নীচের ফাইলগুলি / ফোল্ডারগুলি সাফ / মুছে ফেলা হয়েছে:

    • %USERPROFILE%\AppData\Local\assembly
    • %USERPROFILE%\AppData\Local\Microsoft\UnitTest
    • %USERPROFILE%\AppData\Local\Microsoft\VisualStudio\14.0\1033\SpecificFolderCache.xml
    • %USERPROFILE%\AppData\Local\Microsoft\VisualStudio\14.0\1033\ProjectTemplateMRU.xml
    • %USERPROFILE%\AppData\Local\Microsoft\VisualStudio\14.0\ComponentModelCache
    • %USERPROFILE%\AppData\Local\Microsoft\VisualStudio\14.0\Designer\ShadowCache
    • %USERPROFILE%\AppData\Local\Microsoft\VisualStudio\14.0\ImageLibrary\cache
    • %USERPROFILE%\AppData\Local\Microsoft\VisualStudio Services\6.0\Cache
    • %USERPROFILE%\AppData\Local\Microsoft\WebsiteCache
    • %USERPROFILE%\AppData\Local\NuGet\Cache
    • %USERPROFILE%\AppData\Local\Temp

ধন্যবাদ, আপনি বর্ণনা করেছেন মাইক্রোসফ্ট ual ভিজ্যুয়ালস্টুডিও \ 14.0 \ এবং মাইক্রোসফ্ট \ ভিজ্যুয়ালস্টুডিও পরিষেবাগুলি .0 6.0 \ ক্যাশে ফোল্ডারগুলি সাফ করার পরে আমার পক্ষে কাজ করেছেন।
নীল ভ্যান রেইমার্সডাল

নিশ্চয়ই আপনি বলতে চাইছেন \Microsoft\VisualStudio\14.0\ImageLibrary\ImageLibrary.cache?
মতিন উলহাক

2
আমি% TEMP% থেকে সবকিছু সরিয়ে ফেলেছি এবং এটি কার্যকর হয় না, তবে যখন আমি 'ভিজ্যুয়াল স্টুডিওসটেষ্ট এক্সপ্লোরার এক্সটেনশানস' ডিরেক্টরিটি পড়েছিলাম (খালি) প্রত্যেকে পুরোপুরি কাজ করে :-) (বর্তমান দিনে নীচে সেই সমাধানটি সন্নিবেশিত আছে)
নীলফিলাস

আমি নিশ্চিত করতে চাই যে এই সমাধান VS2015 আপডেট 3 এবং Resharper 10. সঙ্গে আমার জন্য কাজ করে কিন্তু আপনি অলৌকিক ঘটনা দেখতে পুনরায় আরম্ভ করা আবশ্যক
Quoc গুয়েন

1
আমি কেবল একটি ফাইল মুছে ফেলেছি \ অ্যাপডাটা \ স্থানীয় \ মাইক্রোসফ্ট \ ভিজ্যুয়ালস্টুডিও \ 14.0 \ 1033 \ সুনির্দিষ্ট ফোল্ডারক্যাচ.এক্সএমএল এটি শিরোনাম
সেরিহি কুজমিচভ

21

এই সমস্যার অন্যতম কারণ হ'ল আপনার পরীক্ষার শ্রেণি সর্বজনীন নয়। এমএসটিস্ট শুধুমাত্র পাবলিক ক্লাস থেকে পরীক্ষা আবিষ্কার করে।


1
যদিও এটি ১০০% সঠিক নয় এবং আমার একটি অ-সর্বজনীন শ্রেণি জরিমানা কাজ করেছিল, এক পর্যায়ে এর ইউনিট পরীক্ষাটি কাজ করা বন্ধ করে দিয়েছে। আমি যখন ইউনিট পরীক্ষার শ্রেণিটি সর্বজনীনতে পরিবর্তন করেছি, এটি আবার কাজ শুরু করে। চিত্রে যান!
শাশাআরজ

এটি আমার জন্য এটি সমাধান করেছে। ডিফল্টরূপে ভিজ্যুয়াল স্টুডিও সর্বজনীন কীওয়ার্ড ব্যতীত পরীক্ষার ক্লাস যুক্ত করে এবং আমি তাদের সর্বজনীন না করা পর্যন্ত এগুলি দেখতে পাবে না।
মার্ক ফিয়ারবি

13

ভিসুয়াল স্টুডিও 2015 (আপডেট 3) আপনি পরীক্ষা এক্সপ্লোরার পরীক্ষার সংযুক্ত করতে চান তারপর ইনস্টল করতে হবে NUnit টেস্ট অ্যাডাপ্টার .Download থেকে অ্যাডাপ্টারের Tools-> এক্সটেনশান এবং Updates-> অনলাইন ট্যাব (আপনি অ্যাডাপ্টারের জন্য অনুসন্ধান করতে আছে ) -> ডাউনলোড করুন । ভিজ্যুয়াল স্টুডিওটি পুনরায় চালু করে আপনি পরীক্ষার কাঠামোর পরিবর্তন দেখতে পারবেন।


2
আপনার নির্দেশাবলী অনুসরণ করে, আমি "নুনিট" অনুসন্ধান করে "নুনিট 3 টেস্ট অ্যাডাপ্টার" পেয়েছি যা "ডাউনলোড" (ইনস্টল) এর পরে, আমার সমস্যার সমাধান করেছে। এই ইস্যুটির জন্য ইন্টারনেট অনুসন্ধান করা লিঙ্কে
অ্যাডাম কক্স

এটি কনফিগার ফাইলগুলিকে পরিবর্তন না করায় কিছু পরিস্থিতিতে নুগেট প্যাকেজ ম্যানেজারের চেয়ে ভাল
GY_

1
: @GY_ কিন্তু আপনি যখন .NET কোর বা স্ট্যান্ডার্ড targetting করছি, আপনি আসলে NuGet প্যাকেজ প্রয়োজন, নীচের নিচে আমার উত্তর পরীক্ষা stackoverflow.com/a/47460221/1137334
m93a

আপনি আমার জীবন রক্ষা ! ধন্যবাদ, আমি অনেকগুলি সমাধান চেষ্টা করেছি এবং এটি কার্যকর হয়নি। আমার ছিল গুগল টেস্ট অ্যাডাপ্টার।
এরমান

9

আমার এর সম্পূর্ণ উত্তর নেই তবে আমি একটি পরীক্ষা প্রকল্পের সাথে খেলে কিছু জিনিস নির্ধারণ করেছি:

  1. xunit.runner.aspnet : 2.0.0-aspnet-beta4সরকারী beta4 aspnet5 মুক্তির অংশ প্রদর্শিত হতে ভিসুয়াল স্টুডিও মধ্যে কাজ করে না।
  2. পরিবর্তে, ব্যবহার "xunit": "2.1.0-*"এবং "xunit-runner.dnx": "2.1.0-*"প্যাকেজগুলি ভিজ্যুয়াল স্টুডিওতে কাজ করে।
  3. পরীক্ষাগুলি আবিষ্কারের জন্য ভিএসের জন্য, আপনার প্রকল্পের "টেস্ট" নামে একটি সিঙ্গেল কমান্ড থাকতে হবে যা "xunit.runner.dnx" চালায়। অতিরিক্ত কমান্ড যুক্ত করা এটি ভেঙে যেতে পারে।
  4. যদি এখনও আপনার টেস্ট এক্সপ্লোরার উইন্ডোটি খালি হয়ে যায়, আপনার প্রকল্প থেকে "পরীক্ষা" কমান্ডটি সরিয়ে ফেলুন, তারপরে সমাধানটি পুনরায় তৈরি করুন, তারপরে "টেস্ট" কমান্ডটি প্রজেক্ট.জেসনে যুক্ত করুন।
  5. @ ফ্রেড-ক্লুভারের পরামর্শ অনুসারে আপনার সমস্ত ক্যাশে সাফ করা সহায়তা করতে পারে তবে আমি বিচ্ছিন্নভাবে সমস্ত পদক্ষেপগুলি করি নি, তাই আমি নিশ্চিত নই।

এটি দৈনিক নয়, বিটা 4 রিলিজ ব্যবহার করে ভিএস 2015 সিটিপি 6 অনুযায়ী বর্তমান।


1
ঠিক আছে, আমি নিশ্চিত করেছি (সহকর্মীর দ্বারা এটি চেষ্টা করে) যে উপরের ফিক্সটিতে ক্যাশে বা টেম্প ফাইলগুলি পরিষ্কার করার দরকার নেই।
অভি চেরি

উপরে "xunit": "2.1.0- " এবং "xunit-runner.dnx" ব্যবহার করে: "2.1.0- " প্যাকেজগুলি ভিজ্যুয়াল স্টুডিওতে কাজ করে "" এটি কাজ করে, ধন্যবাদ!
গিলার্ডো

বিটিডব্লিউ, অনুসরণ হিসাবে, বর্তমান রিলিজ হিসাবে এখন ভিএস 2015 তে সবকিছু ঠিকঠাক কাজ করছে বলে মনে হচ্ছে। দেখানোর জন্য নতুন পরীক্ষা পাওয়ার জন্য কোনও হট্টগোলের প্রয়োজন নেই।
আভি চেরি

1
অবশেষে, ডিএনএক্স-এর কোন সংস্করণগুলির সাথে জুনিটের কোন সংস্করণগুলি ব্যবহার করতে হবে সে সম্পর্কে এখন এমএসের একটি সঠিক গাইড রয়েছে: xunit.github.io/docs/getting-st সূত্র-dnx.html
আভি চেরি

9

আমার একটি উদাহরণ রয়েছে যেখানে কয়েকটি পরীক্ষাগুলি বাছাই করা হবে না কারণ আমি তাদের asyncনীচের মতো করে দিয়েছি :

public async void This_IsMy_UnitTest()

সমস্যাটি ছিল আমি তাদের ফিরিয়ে আনতে ভুলে গিয়েছিলাম Taskএবং নাvoid যখন স্যুইচ-ওভারটি করেছিলাম তখনই । কেউ ভাবেন যে এটি কোনও ত্রুটি বা ব্যর্থ পরীক্ষার কারণ হয়ে উঠবে কিন্তু তা নয়। এই শ্রেণীর ইউনিট পরীক্ষাগুলি পুরোপুরি উপেক্ষা করা হয়েছিল এবং তাদের অস্তিত্বের মতো আচরণ করা হয়নি।

এটি প্রায় 3 টি পরিষ্কার এবং বিল্ড + পরে পুনরায় আরম্ভ করার পরে নয় VS.NETযে আমি পরীক্ষার রানটি দেখেছি এবং ব্যর্থতার ইঙ্গিত দিয়েছিলাম যে আমি Taskফেরতের প্রকারটি যুক্ত করতে ভুলে গেছি :

public async Task This_IsMy_UnitTest()

আপডেটের পরে, ইউনিট পরীক্ষাগুলি সঠিকভাবে পাওয়া গেছে এবং কাজ করেছে। এটি একটি প্রান্তের ক্ষেত্রে হতে পারে, তবে স্বাক্ষর সঠিক না থাকাতে asyncব্যবহারের জন্য পরীক্ষাগুলি চালানো awaitএকই সমস্যার কারণ হতে পারে এবং এটি আমি প্রথমবারের মতো করিনি।


আমার জন্য বিষয়টি সমাধান!
আইমল খান

8

নুগেট প্যাকেজ ম্যানেজারে যান এবং নিম্নলিখিত হিসাবে নুনিট অ্যাডাপ্টার ডাউনলোড করুন।

এখানে চিত্র বর্ণনা লিখুন


আপনাকে ধন্যবাদ, আমার ক্ষেত্রে আমার কাছে NUnit3TestAdapter এর পরিবর্তে NUnitTestAdapter ছিল। এটি আমার সমস্যার সমাধান করেছে।
পিক্সেল

কোনও সমাধানে বা কোনও প্রকল্পে NUnit3TestAdapter nuget প্যাকেজ যুক্ত করা সাধারণভাবে অন্যান্য সমস্ত সমাধানগুলির জন্য সমস্যার সমাধান করতে পারে না, তবে কেবল এটির ক্ষেত্রেই এটি যুক্ত করা হয়েছে। যাতে এটা, সব সমাধান / projs সাধারণত করার জন্য আপনার ভিসুয়াল স্টুডিও থেকে NUnit 3 টেস্ট অ্যাডাপ্টার এক্সটেনশানটি যোগ করুন এ ব্যাখ্যা হিসাবে stackoverflow.com/a/45748818/1300390
উমর টি

6

আমার একই প্রলেম ছিল তবে আমার মেশিনে "% TEMP% \ ভিজ্যুয়াল স্টুডিওটেষ্টএক্সপ্লোরার এক্সটেনশানস" ফোল্ডারটি বিদ্যমান ছিল না কারণ আমি যে পোস্টগুলি পড়ি আমার এটি তৈরি করার ধারণা ছিল এবং এটি কাজ করে। পরীক্ষা এক্সপ্লোরার এখন আমার সমস্ত পরীক্ষা দেখাতে সক্ষম। ধন্যবাদ।


6

কেবলমাত্র ভিজ্যুয়াল স্টুডিও পুনরায় চালু করুন এবং টেস্ট এক্সপ্লোরারে "চালান সমস্ত" করুন ... আমার সমস্ত পরীক্ষাগুলি তখন সন্ধান করা হয়।


1
আমি লক্ষ্য করেছি যে কেবলমাত্র টেস্ট এক্সপ্লোরার বন্ধ করে এবং এটি পুনরায় চালু করা এবং রান অল কাজগুলিও পছন্দ করে। আমি নিশ্চিত নই যে এটি সর্বদা কার্যকর হয় তবে এটি এখন এটি কার্যকর হয়েছিল।
ধনী

5

আমার ক্ষেত্রে (ভিজ্যুয়াল স্টুডিও এন্টারপ্রাইজ 2015 14.0.25425.01 আপডেট 3, পুনরায় ভাগ করুন 2016.2) আমার কেবল বিল্ড মেনু থেকে একটি পরিষ্কার সমাধান করা দরকার । সমাধানটি পুনর্নির্মাণের পরে পরীক্ষার এক্সপ্লোরারকে "জাগ্রত" করতে এবং আবার সমস্ত পরীক্ষার সন্ধান করে।


5

আমার ক্ষেত্রে সমাধানটি ছিল কেবলমাত্র আমার ভিজ্যুয়াল স্টুডিও 2015 এ নুনিট 3 টেস্ট অ্যাডাপ্টার এক্সটেনশনটি ইনস্টল করা ।

'এক্সটেনশনস এবং আপডেটস' 'সরঞ্জাম' মিউয়ের অধীনে উপস্থিত রয়েছে


আপনার উত্তর কীভাবে প্রশ্নের মান যুক্ত করে? তুমি কি ওগুলো পরেছ? ইতিমধ্যে দুটি উত্তর রয়েছে যা সঠিক একই সমাধানের প্রস্তাব দেয়: stackoverflow.com/a/41364951/6305294 , stackoverflow.com/a/35043380/6305294
অ্যালেক্স

2
ঠিক আছে, আমি প্রথমটি পড়েছি (অর্থাত্ স্ট্যাকওভারফ্লো.com/a/41364951/6305294) তবে এটি আমার উত্তর থেকে আলাদা কারণ এটি কোনও সমাধান বা কোনও প্রকল্পে নুনিট অ্যাডাপ্টার নুগেট প্যাকেজ যুক্ত করার পরামর্শ দিচ্ছে, যা ঠিক করে না সাধারণভাবে অন্যান্য সমস্ত সমাধানের জন্য সমস্যা। দ্বিতীয়টির প্রতি, আমি স্বীকার করতে পেরেছি যে আমি এটি দেখতে মিস করেছি। যখন একটি প্রশ্নের দুটি দুটি উত্তর উপস্থিত থাকে তখন সম্ভবত একটি স্ক্রিনশট যুক্ত করা চোখটিকে নজর দিতে সহায়তা করে
উমর টি।

4

আমার ক্ষেত্রে সমস্যাটি ছিল "চেয়ার এবং কীবোর্ডের মধ্যে"। আমি কনফিগারেশন ম্যানেজারের একটি কনফিগারেশনে স্যুইচ করেছি যা আমার ইউনিট পরীক্ষার প্রকল্পগুলি বিল্ডে অন্তর্ভুক্ত করে না। কোনও কনফিগারেশন (যেমন ডিবাগ) -এ ফিরে যাওয়া যা এতে সমস্ত প্রকল্পই অন্তর্ভুক্ত করে fixed


4

আমার ক্ষেত্রে, ভিএস 2015 এর অধীনে এমএসটিস্ট পরীক্ষার (অর্থাত্ পদ্ধতি) নামের পরীক্ষাগুলি উপেক্ষা করছে যা 174 টির চেয়ে বেশি অক্ষরের। নামটি সংক্ষিপ্ত করে পরীক্ষাটি দৃশ্যমান হওয়ার অনুমতি দেয়। এটি পরীক্ষার নামটি পরিচালনা করে অনুমান ও পরীক্ষার মাধ্যমে নির্ধারণ করা হয়েছিল।


4

এটি সম্ভবত বেশিরভাগ লোককে সহায়তা করবে না, তবে ইউনিট পরীক্ষায় অনভিজ্ঞ কেউ এমন একটি পরীক্ষা পদ্ধতি লিখেছিলেন যা boolপরিবর্তে ফিরে এসেছে void:

[TestMethod]
public bool TestSomething()

সমস্যার voidস্থির করতে রিটার্নের ধরণ পরিবর্তন করা ।


এখনও জেনে রাখা আকর্ষণীয় যে কোনও প্রকারটি ফেরানো পরীক্ষার আবিষ্কারকে বাধা দেয়, আমি এটি জানতাম না।
ফ্রেড ক্লেভার

3

নিশ্চিত করুন xunit.runner.visualstudio আপনার পরীক্ষার প্রকল্পের packages.config প্যাকেজ এবং যে সঠিকভাবে পুনরুদ্ধার করা হয়েছিল।

আমি জানি এটি মূল প্রশ্নের ক্ষেত্রে ছিল না তবে এটি আমার মতো কারও জন্য সময় সাশ্রয় করতে পারে।


3

আমি কেবল যুক্ত করতে চাই যে উপরের বিষয়গুলির জন্য আমি সম্পূর্ণ ভিন্ন সমাধান পেয়েছি।

আমি আমার পরীক্ষার ক্লাসটি নীচের হিসাবে ঘোষণা করেছিলাম:

[TestClass]
class ClassificationTests
{
   //unit tests
}

publicক্লাসে আমি মডিফায়ার যুক্ত করার সাথে সাথে এটি আশানুরূপভাবে কাজ করেছে!


2

যদি আপনি .NET স্ট্যান্ডার্ড বা .NET কোর লক্ষ্য করে থাকেন তবে আপনাকে NUnit টেস্ট অ্যাডাপ্টারের জন্য নয়গেট প্যাকেজটি ব্যবহার করতে হবে, এক্সটেনশনটি নয়

আপনি যদি নেট নেট বা .NET স্ট্যান্ডার্ড প্রকল্প পরীক্ষা করে থাকেন তবে নুগেট থেকে অ্যাডাপ্টার ইনস্টল করার পরামর্শ দেওয়া হচ্ছে। ভিএসআইএক্স অ্যাডাপ্টার .NET কোর সমর্থন করে না এবং করবে না, কারণ ভিএসআইএক্স প্যাকেজগুলি একাধিক প্ল্যাটফর্মকে লক্ষ্য করতে পারে না।

উৎস: নুনিত গিটহাব উইকি

এছাড়াও জিজ্ঞাসিত প্রশ্নাবলী এখানে দেখুন:

আমার পরীক্ষাগুলি ভিজ্যুয়াল স্টুডিও 2017 এ প্রদর্শিত হচ্ছে না?

  • আপনি কি নিউগেট প্যাকেজটি ব্যবহার করছেন?
  • আপনি কি 3.8.0 সংস্করণ বা নিউগেট প্যাকেজটির নতুন ব্যবহার করছেন?
  • আপনার পরীক্ষাগুলি। NET কোর বা সম্পূর্ণ .NET ফ্রেমওয়ার্ককে লক্ষ্য করে? (উপরে দেখুন)
  • আপনি কি Microsoft.NET.Test.Sdk এ একটি প্যাকেজ রেফারেন্স যুক্ত করেছেন?
  • আপনি কি ভিজ্যুয়াল স্টুডিও পুনরায় চালু করেছেন? এটি এখনও কিছুটা মেজাজী।

সূত্র: নুনিত গিটহাব উইকি


2

এটি আমার সাথে ঘটেছিল কারণ আমার পরীক্ষার প্রকল্পে একটি ছিল app.config । এটি অ্যাসেম্বলি পুনঃনির্দেশের জন্য নুগেট প্যাকেজগুলির দ্বারা স্বয়ংক্রিয়ভাবে যুক্ত হয়েছিল, তবে আমার পরীক্ষাগুলি এটিকে ছাড়াই ঠিকঠাক বলে মনে হয়েছিল।

দেখুন: https://developercommune.visualstudio.com/comments/42858/view.html


1

আমারও একই সমস্যা ছিল। আমি প্রকল্পটি কেবল পরিষ্কার এবং পুনর্নির্মাণ করেছি এবং আমি যে পরীক্ষাগুলি অনুপস্থিত ছিল তা দেখতে পেয়েছি।


1

আমার সমাধান ভাগ করে নেওয়ার জন্য পপিং। আমি উইন্ডোজ 10, ভিজ্যুয়াল স্টুডিও 2015, নুনিট 3.5, নুনিট টেস্ট অ্যাডাপ্টার 3.6 (নিউগেটের মাধ্যমে, ভিআইএসএক্স এক্সটেনশন নয়) এ ছিলাম এবং আমার কোনও পরীক্ষার সন্ধান করা হয়নি। আমার সমস্যাটি ছিল আমার সমাধানের টেস্ট প্রকল্পে, কোনওভাবে প্রজেক্ট ফোল্ডারের মধ্যে আমার "ডকুমেন্টস" ফোল্ডারের শর্টকাট তৈরি করা হয়েছিল। আমি অনুমান করছি টেস্ট অ্যাডাপ্টারটি শর্টকাটটি দেখছিল এবং এর সাথে কী করা যায় তা বের করার চেষ্টা করছিলাম, ফলে ইউনিট পরীক্ষাগুলি প্রদর্শন করতে ব্যর্থ হয়েছিল।


1

ফাইলটি মুছে ফেলা হচ্ছে \ অ্যাপডাটা \ স্থানীয় \ মাইক্রোসফ্ট \ ভিজ্যুয়ালস্টুডিও \ 14.0 \ 1033 \ সুনির্দিষ্ট ফোল্ড er এরকচ.এক্সএমএল সমস্যাটি আমার জন্য সমাধান করেছে।


1

এই বিষয়টি কিছুটা পুরানো, তবে ভিএস ২০১৫-তে আমার অনুপস্থিত টেস্টের স্থিতির সমাধান:

টাস্ক-স্ট্যাটাসটি কেবলমাত্র ডিবাগ বিল্ড কনফিগারেশনে প্রদর্শিত হয়। অবশ্যই এটি পরীক্ষা-এক্সপ্লোরারের মাধ্যমে আপনার পরীক্ষাটি ডিবাগ করাও অসম্ভব করে তোলে।


1

আমিও এই দুর্দান্ত সামান্য বৈশিষ্ট্য দ্বারা কামড়েছি এবং এখানে বর্ণিত কিছুই আমার পক্ষে কাজ করে নি। যতক্ষণ না আমি বিল্ড আউটপুটটি ডাবল-চেক করেছি এবং লক্ষ্য করেছি যে প্রাসঙ্গিক প্রকল্পগুলি নির্মিত হচ্ছে না। কনফিগারেশন পরিচালকের একটি দর্শন আমার সন্দেহের সত্যতা নিশ্চিত করেছে।

ভিজ্যুয়াল স্টুডিও 2015 সানন্দে আমাকে নতুন প্রকল্প যুক্ত করার অনুমতি দিয়েছে কিন্তু সিদ্ধান্ত নিয়েছে যে এগুলি নির্মাণের পক্ষে এটি উপযুক্ত নয়। একবার আমি বিল্ডগুলিতে প্রকল্পগুলি যুক্ত করেছি এটি দুর্দান্তভাবে খেলতে শুরু করেছে।


1

আমি এটি এক্স 64 এ পরিবর্তন করে সমাধান করেছি: প্রকল্পে ডান ক্লিক করুন -> সম্পত্তি -> বিল্ড -> প্ল্যাটফর্ম লক্ষ্য -> কোনও সিপিইউ


1

কোনওভাবেই আমার প্রকল্পটি স্ট্যাটিক লাইব্রেরি (.lib) হিসাবে সংকলনের জন্য সেট করা হয়েছিল । এটি একটি ডায়নামিক লাইব্রেরিতে (.dll) এ পরিবর্তন করার পরে , ভিজ্যুয়াল স্টুডিও 2012 দ্বারা সঠিকভাবে আবিষ্কার করা হয়েছে এমন পরীক্ষাগুলি।

My Unit Test Project ->
Properties ->
Configuration Properties ->
General ->
Configuration Type

1

আমার পক্ষে সমস্যাটি ঠিক করা এত সহজ ছিল:

  • আপনার ইউনিট পরীক্ষা প্রকল্প নির্বাচন করুন
  • সলিউশন এক্সপ্লোরারে 'সমস্ত ফাইলগুলি দেখান' বাটনে ক্লিক করুন এবং 'অজেক্স \ x86 \ ডিবাগ' এর মধ্যে সমাধান এক্সপ্লোরারের ফাইল ট্রিতে নতুন অস্থায়ী ফাইল উপস্থিত হয়েছিল।
  • এই অস্থায়ী ফাইলগুলি মুছুন এবং প্রকল্পটি পুনর্নির্মাণ করুন।
  • পরীক্ষা চালানোর চেষ্টা করেছেন এবং কাজ করেছেন!

1

আমাদেরও একই সমস্যা ছিল। এতে একাধিক সি # প্রকল্প এবং আরও পরীক্ষামূলক প্রকল্প সহ আমাদের কাছে একটি বড় ভিএস 2015 সমাধান রয়েছে।

রিশার্পারের পরীক্ষার আবিষ্কারটি ঠিক কাজ করেছিল, কিন্তু ভিএস টেস্ট এক্সপ্লোরার খারাপভাবে ব্যর্থ হয়েছিল।

দেখা যাচ্ছে যে প্রকল্পগুলির এমসেটেস্ট টেস্টফ্রেমওয়ার্ক এবং টেস্টএডাপ্টারের একই সংস্করণ ছিল না এবং কখনও কখনও তারা নুগেটস এবং অন্যান্য সময়ের ভাল পুরানো রেফারেন্স ব্যবহার করে এবং এটি দৃশ্যত সমর্থন করে না (এত দামি আইডিইয়ের জন্য এতটা)।

সমস্ত মাইক্রোসফ্ট.ভিউজুয়ালস্টুডিও.টেষ্ট * রেফারেন্সগুলি সরানো এবং তারপরে দুটি এমএসটিস্ট নিউগেটস যুক্ত / আপডেট করা সমস্যার সমাধান করে।


1

আমার পরীক্ষার প্রকল্পের টার্গেট ফ্রেমওয়ার্ক পরীক্ষার অধীনে থাকা প্রকল্পের চেয়ে আলাদা ছিল তা বুঝতে পেরে আমি এই সমস্যার সমাধান করেছি । হ্যাঁ, আমি ডিফল্ট (প্রকল্প> বৈশিষ্ট্য> অ্যাপ্লিকেশন) থেকে লক্ষ্য কাঠামো পরিবর্তন করে এই সমস্যাটি তৈরি করেছি, তবে পরীক্ষার প্রকল্পের জন্য এটি ব্যর্থ হয়েছি, যা বেশ কয়েক সপ্তাহ পরে তৈরি হয়েছিল। অমিলটি কোনও সংকলক ত্রুটি সৃষ্টি করে নি, তবে ত্রুটি তালিকার উইন্ডোতে এটি একটি সতর্কতার ফলস্বরূপ । আমি একবার সতর্কতা প্রদর্শনের বিকল্পটি নির্বাচন করলে সমাধানটি সুস্পষ্ট ছিল।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.