পাই-টেস্ট পরীক্ষা চালানোর জন্য আমি পাইচার্ম কীভাবে কনফিগার করব?


162

আমি আমার পাইথন কোডের জন্য ইউনিট পরীক্ষা লিখতে শুরু করতে চাই এবং পাই পাইস্ট ফ্রেমওয়ার্কটি পাইথনের বান্ডেল ইউনিটেস্টের চেয়ে আরও ভাল বাজি বলে মনে হচ্ছে । সুতরাং আমি আমার প্রকল্পে একটি "পরীক্ষা" ডিরেক্টরি যুক্ত করেছি এবং এটিতে test_sample.py যুক্ত করেছি। এখন আমি আমার "পরীক্ষাগুলি" ডিরেক্টরিতে সমস্ত পরীক্ষা চালানোর জন্য পাইচর্ম কনফিগার করতে চাই।

পাইকার্ম অভিযোগ করেছে যে এটির পরীক্ষার রানারটিতে পাইস্টেস্ট সমর্থন করে । আপনার পরীক্ষা চালানোর জন্য আপনি একটি রান / ডিবাগ কনফিগারেশন তৈরি করতে সক্ষম হবেন বলে মনে করা হচ্ছে এবং পাইচার্মের অভিযোগ রয়েছে পাই পাইস্টের জন্য বিশেষত একটি "কনফিগারেশন তৈরি করুন" ডায়ালগ বক্স । তবে বিষয়টি তাদের ডকুমেন্টেশনের সম্পূর্ণ ব্যাপ্তি এবং আমি এই কথিত ডায়ালগ বক্সটি কোথাও খুঁজে পাচ্ছি না।

যদি আমি প্রকল্পের সরঞ্জাম উইন্ডোতে ডিরেক্টরিটি ডান-ক্লিক করি তবে আমার মনে হয় একটি "তৈরি করুন <নাম>" মেনু আইটেমটি দেখতে পাবে, তবে "তৈরি করুন" দিয়ে শুরু হওয়া একমাত্র মেনু আইটেমটি হ'ল "রান কনফিগারেশন তৈরি করুন"। ঠিক আছে, সম্ভবত ডকুমেন্টেশনটি কেবল ভুল, এবং "রান কনফিগারেশন তৈরি করুন" আশ্বাস দেয়। দুর্ভাগ্যক্রমে, এর সাবমেনুতে কেবলমাত্র দুটি আইটেম হ'ল "ইউনিটেটস ইন সি: \ মাইপাথ ..." এবং "সিলে ডক্টেটস: \ মাইপাথ ..." যার কোনওটিই প্রযোজ্য নয় - আমি ইউনিটেস্ট বা ডক্টেস্টও ব্যবহার করি না। পাইস্টেস্টের জন্য কোনও মেনু আইটেম নেই।

যদি আমি আমার টেস্ট_সাম্পল.পিটি খুলি এবং সম্পাদক উইন্ডোতে ডান-ক্লিক করি, তবে আমি প্রতিশ্রুত "তৈরি করুন <নাম>" মেনু আইটেমগুলি পেয়েছি: "টেস্ট_এসএতে 'ইউনিটেটস তৈরি করুন ...'...", তার পরে "রান" 'টেস্ট_এসএ ইউনিটেটস ...' "এবং" টেস্ট_সেবায় ডিবাগ 'ইউনিটেটস ...' "। সুতরাং আবার, এটি একক কাঠামোর জন্য নির্দিষ্ট; পাইস্টেস্টের জন্য কিছুই নেই

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

আমি পাইথন ৩.১.৩ এবং পাইস্টেস্ট ২.০.৩ সহ উইন্ডোজে পাইচার্ম ১.২.২ ব্যবহার করছি। py.testকমান্ড লাইন থেকে আমি আমার পরীক্ষাগুলি সফলভাবে চালাতে পারি, তাই পাইস্টেস্ট সঠিকভাবে ইনস্টল না হওয়ার মতো সহজ কিছু নয়।

আমি আমার পাইস্টেস্ট টেস্টগুলি চালানোর জন্য পাইচার্ম কীভাবে কনফিগার করব?

উত্তর:


228

দয়া করে ফাইল | এ যান সেটিংস | সরঞ্জাম | পাইথন ইন্টিগ্রেটেড সরঞ্জাম এবং ডিফল্ট পরীক্ষা রানারকে পাইস্টেস্টে পরিবর্তন করুন। তারপরে আপনি ইউনিটেস্টের পরিবর্তে পরীক্ষা তৈরির জন্য পাইস্টেস্ট বিকল্পটি পাবেন।


Hah! আমি কীভাবে মিস করেছি জানি না। এটি কেবলমাত্র অর্ধেকটি কাজ করে: যদিও আমি প্রকল্পের সরঞ্জাম উইন্ডোর ফোল্ডারে ডান-ক্লিক করি, এটি আমাকে পাইটেসেটস নয় ডকুমেন্টস তৈরির একটি বিকল্প দেয়। (আমি একটি বাগ প্রতিবেদন লিখে রাখব)) তবে আমি যদি সম্পাদকটিতে ডান ক্লিক করি এবং তারপরে "স্ক্রিপ্ট:" ডিরেক্টরি ডিরেক্টরিতে পরিবর্তন করি তবে এটি কার্যকর হয়।
জো হোয়াইট

3
আপনার উত্স ডিরেক্টরিটি একটি "উত্সের মূল" হিসাবে চিহ্নিত করুন: jetbrains.com/pycharm/webhelp/content-root.html
Inti

1
প্রতি মডিউলের পরিবর্তে পুরো প্রকল্পের (বা সমস্ত প্রকল্প) জন্য এটি সেট করার কোনও উপায় আছে কি?
অরেঞ্জডগ

1
মনে হচ্ছে File | Settings | Tools | Python Integrated Toolsবরং 5. PyCharm এ ডিফল্ট সেটিং চেয়ে প্রকল্প সেটিংসে কেবল প্রাপ্তিসাধ্য
killthrush

2
একবার এটি কনফিগার হয়ে গেলে আপনি কীভাবে পরীক্ষাগুলি চালাবেন?
ক্রিস অ্যান্ডারসন

51

পাইচার্ম 2017.3

  1. Preference -> Tools -> Python integrated Tools- py.testহিসাবে চয়ন করুন Default test runner
  2. আপনি যদি জ্যাঙ্গো ব্যবহার করেন Preference -> Languages&Frameworks -> Django- সেট টিক অন করুনDo not use Django Test runner
  3. পূর্বের সমস্ত বিদ্যমান পরীক্ষার কনফিগারেশনগুলি সাফ করুন Run/Debug configuration, অন্যথায় older পুরানো কনফিগারেশনের মাধ্যমে পরীক্ষা চালানো হবে।
  4. কিছু ডিফল্ট অতিরিক্ত যুক্তি সেট করতে py.test ডিফল্ট কনফিগারেশন আপডেট করুন update Run/Debug Configuration -> Defaults -> Python tests -> py.test -> Additional Arguments

2
পাইচার্ম 2017.3.2 এ, আমি ডিফল্ট হিসাবে পাইস্টেস্ট সেট করার পরেও যখন আমি প্রকল্প প্যানেলে প্রকল্পটিতে ডান ক্লিক করি এবং নির্বাচন করি New => Python File, Kind:ড্রপডাউনটি কেবলমাত্র পাইথন ফাইল, ইউনিট পরীক্ষা, পাইথন স্টাব, পাইস্টেস্ট নয় not আমি উপরের থ্রেডগুলিতে উল্লিখিত সমস্ত অবস্থানের দিকে নজর রেখেছি। আমি কী মিস করছি?
টম বাকের

পাইথন ফাইল, ইউনিট পরীক্ষা, পাইথন স্টাব - এগুলি পাইথন ফাইল, কিছু পূর্বনির্ধারিত ডেটা সহ, আপনি নিজের নিজস্ব যুক্ত করতে পারেন, এই বিষয়টি jetbrains.com/help/pycharm/… পড়তে পারেন । তবে এটি পাইস্টেস্ট পরীক্ষা চালানোর ক্ষেত্রে প্রভাব ফেলবে না, আপনি কেবল একটি অজগর ফাইল তৈরি করতে পারেন এবং এটি কার্যকর হবে। এই বিষয়টিতে আমরা কীভাবে py.test চালাতে jetbrains.com/help/pycharm/running-tests.html এই বৈশিষ্ট্যটি কনফিগার করতে হবে তা নিয়ে আলোচনা করছি ।
সের্গে কুব্রাক

সর্বশেষ পাইচার্মে, "ডিফল্ট" কে "টেমপ্লেট" বলা হয়
আগডুড

19

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

আমি এটিও দেখেছি যে ম্যানুয়ালটি এর জন্য ইউআইয়ের সাথে মেলে না। আশা করি আমি সমস্যাটি সঠিকভাবে বুঝতে পেরেছি এবং এটি সাহায্য করে।


4
"ডিফল্ট> পাইস্টেস্ট" পৃষ্ঠাটি আমাকে আসলে কনফিগারেশন তৈরির কোনও উপায় দেয়নি। তবে যদি আমি কনফিগারেশন সম্পাদনা ডায়ালগটিতে যাই, "+" সরঞ্জামদণ্ডের বোতামটি ক্লিক করে, "পাইস্টেস্ট" নির্বাচিত হয়েছি এবং "টেস্টিং ডিরেক্টরি "টি আমার পরীক্ষাগুলি অন্তর্ভুক্ত ডিরেক্টরিতে সেট করেছিলাম, এটি একটি কনফিগারেশন তৈরি করেছিল যা আমার পরীক্ষা চালাবে। প্রোগ্রামটির সহায়ক অংশে আমাকে ইশারা করার জন্য +1। আমি @ ইয়োলকে স্বীকৃত উত্তর দেব, যদিও, যেহেতু আমি মনে করি যে পাই-টেস্টে ডিফল্টটি পরিবর্তন করা আরও ভাল সমাধান - এটি আমাকে কেবলমাত্র বর্তমান ফাইল এবং এটির মতো চালানো উচিত।
জো হোয়াইট

@ জোওহাইট দয়া করে এটি সহায়ক হিসাবে উত্তর হিসাবে যুক্ত করুন
হরিওম সিং

সম্পাদনা কনফিগারেশন উইন্ডোতে, আমার পাইস্টেস্ট কনফিগারেশনটি বেছে নেওয়ার পরে, আমাকেও এটি বেছে Targetনিতে হবে Script athএবং এটি আমার পরীক্ষার ফোল্ডারের
মূলটিতে চিহ্নিত করতে হয়েছিল

এটি আরও ভাল উপায়ে যেমন এটি অন্যান্য বৈশিষ্ট্যটি খোলার পাশাপাশি কমান্ড-লাইন-
তর্কগুলি

13

পাইস্টেস্ট 3.7.2( পাইপের মাধ্যমে ইনস্টল করা) এবং পাইচারস দিয়ে এটি কীভাবে কাজ করেছি তা এখানে 2017.3:

  1. যাও edit configurations

  1. একটি নতুন রান কনফিগার যোগ করুন এবং নির্বাচন করুন py.test

  1. রান কনফিগার বিশদের বিবরণে আপনাকে নীচে target= pythonএবং নামবিহীন ক্ষেত্রটি সেট করতে হবে tests। দেখে মনে হচ্ছে এটি আপনার পরীক্ষার ফোল্ডারের নাম। খুব নিশ্চিত না। আমি -sযুক্তিটিও সুপারিশ করি যাতে আপনি যদি আপনার পরীক্ষাগুলি ডিবাগ করেন তবে কনসোলটি সঠিকভাবে আচরণ করবে। আর্গুমেন্ট ব্যতীত পাইস্টেস্ট আউটপুট ক্যাপচার করে এবং ডিবাগ কনসোলকে বাগি করে।

  1. আমার পরীক্ষার ফোল্ডারটি দেখতে এমন দেখাচ্ছে। এটি আমার প্রকল্পের মূলের নীচে ( my_project/tests)।

  1. আমার foobar_test.pyফাইল: (কোনও আমদানির প্রয়োজন নেই):
Def টেস্ট_ফুবার ():
    মুদ্রণ ("হ্যালো পাইস্ট")
    সত্য বলা
  1. এটি সাধারণ রান কমান্ড দিয়ে চালান


বর্তমান ফাইল থেকে কেবল পরীক্ষা চালানোর কি কোনও সম্ভাবনা আছে? আমি শুধু জানতে পারলাম যে, আমি প্রতিটি সময় কনফিগ সেটিংস পরিবর্তন ফাইলের নাম প্রয়োজন আমি অন্য ফাইল খোলার
algot

@ অ্যালগোট আমি জানি না যে এটি আমার মাথার শীর্ষে রয়েছে। এটি দেখুন: jetbrains.com/help/pycharm/perforing-tests.html এবং এটি: jetbrains.com/pycharm/guide/tips/run-single-test
বেনজামিন ক্রাউজিয়ার

5

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

আপনি পারেন:

  1. চারপাশে বাজানোর চেষ্টা করুন, স্ক্রিপ্টটি উল্টো করুন এবং দেখুন যে আপনি কোনওভাবে যুক্তি স্বীকার করার জন্য পাই.স্টেস্ট পেতে পারেন কিনা। এটি কাজ করতে পারে; এটা আমার জন্য প্রথম আধ ঘন্টা ছিল না।
  2. একটি কনসোল থেকে কেবল "পাই.েস্টেস্ট * .py" চালান।

অদ্ভুতভাবে, আপনার যে কোনও আলোচনা খুঁজে পেতে অসুবিধা হবে যেহেতু জেটব্রেইনগুলি তার নিজস্ব পৃষ্ঠাগুলি দিয়ে গুগল অ্যালগরিদমগুলিতে বোমা ফেলার ভাল কাজ করে।


3

আমি যখন একই প্রশ্নটি হিট করেছি এবং সমাধান পাইচার্ম সংস্করণটি পেয়েছি তখন এই থ্রেডটি সন্ধান করুন: 2017.1.2 "পছন্দসমূহ" -> "সরঞ্জাম" -> "পাইথন ইন্টিগ্রেটেড সরঞ্জামসমূহ" এ যান এবং পাইস্টেস্ট হিসাবে ডান পাশের প্যানেল থেকে ডিফল্ট পরীক্ষার রানার সেট করেন আমার সমস্যা সমাধান করুন


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

3

পাইচার্ম 2019.2-এ, আপনি সমস্ত পরীক্ষা চালানোর জন্য এটি সহজেই করতে পারেন:

  1. চালান> কনফিগারেশন সম্পাদনা করুন> পাইস্ট যুক্ত করুন
  2. নিম্নলিখিত স্ক্রীনশট হিসাবে প্রদর্শিত বিকল্প সেট করুন কনফিগারেশনের স্ক্রিনশট
  3. ডিবাগ-এ ক্লিক করুন (বা হাইটকিজ শিফট + আল্ট + এফ 9 ব্যবহার করে পাইস্টেস্ট চালান)

পাইচার্মে পাইস্টের উচ্চতর সংহতকরণের জন্য https://www.jetbrains.com/help/pycharm/pytest.html দেখুন


2

আমি 2018.2 ব্যবহার করছি

আমি রান করি -> কনফিগারেশন সম্পাদনা করুন ... তারপরে মডেল ডায়ালগের উপরের বামদিকে + ক্লিক করুন। "পাইথন টেস্টগুলি" -> পাইস্টেস্ট নির্বাচন করুন তারপরে আমি এটিকে "পাইস্টেস্টের সাথে সমস্ত পরীক্ষা" এর মতো একটি নাম দেব

আমি টার্গেট: মডিউল নামটি নির্বাচন করি এবং মডিউলটিতে রাখি যেখানে আমার পরীক্ষাগুলি হয় (এটি আমার জন্য 'পরীক্ষাগুলি') বা মডিউল যেখানে আমার কোডগুলি আমার কোডের সাথে মিশ্রিত হলে আমার কোডগুলি। এই আমাকে ট্রিপ আপ ছিল।

আমি পাইথন ইন্টারপ্রেটার সেট করি।

আমি ওয়ার্কিং ডিরেক্টরিটি প্রকল্প ডিরেক্টরিতে সেট করেছি।


0

স্পেশাল অ্যাডিন (বিকল্প - স্পেক) এর জন্য পাইপ ইস্ট প্লাস ব্যবহারের জন্য পিপ ইনস্টল অন্তর্ভুক্ত করা হয়েছিল এমন একটি বিশেষ কন্ডা পাইথন সেটআপ সহ, (এসএসপি-এর জন্য দুর্দান্ত পরীক্ষার সংক্ষিপ্ত ভাষার মত ভাষা);

1. বিকল্প = --spec অন্তর্ভুক্ত করতে ডিফল্ট পাইস্টেস্ট সম্পাদনা করুন, যার অর্থ প্লাগইনটি ব্যবহার করুন: https://github.com/pchomik/pytest-spec

2. পাই টেস্ট ব্যবহার করে নতুন পরীক্ষার কনফিগারেশন তৈরি করুন। N / এ্যানাকোন্ডা / এনভিএস / আপনার অনুবাদকের পছন্দ উদাহরণস্বরূপ পাইথ 27 ব্যবহার করার জন্য এর পাইথন ইন্টারপ্রেটারটি পরিবর্তন করুন।

3. 'ইউনিটেটস' পরীক্ষা কনফিগারেশন মুছুন।

৪.এখন ডিফল্ট পরীক্ষার কনফিগারেশনটি আমার মনোরম আরএসপেক শৈলীর আউটপুটগুলির সাথে পাই.টেস্ট। আমি এটা ভালোবাসি! সবাইকে ধন্যবাদ!

রান / ডিবাগ কনফিগারেশনে PS জেটব্রেইনসের ডকটি এখানে: https://www.jetbrains.com/help/pycharm/2016.1/run-debug-configration-py-test.html?search=py.test


0

2018.3 এর সাথে এটি স্বয়ংক্রিয়ভাবে সনাক্ত হয়ে গেছে যে আমি পাইস্ট ব্যবহার করছি যা দুর্দান্ত, তবে এটি এখনও প্রকল্পের শীর্ষ স্তর থেকে চলার অনুমতি দেয় না। আমাকে pytestপ্রতিটি testsডিরেক্টরি পৃথকভাবে চালাতে হয়েছিল ।

তবে, আমি দেখতে পেলাম যে আমি একটি কনফিগারেশন বেছে নিতে পারি এবং ম্যানুয়ালি এডিট করতে পারি প্রকল্পের মূলটিতে চালানোর জন্য এবং এটি কাজ করে। কনফিগারেশনের ড্রপ-ডাউন-এ আমাকে ম্যানুয়ালি চয়ন করতে হবে - প্রজেক্ট ফলকের মূল ফোল্ডারে ডান ক্লিক করতে পারি না। তবে কমপক্ষে এটি আমাকে একবারে সমস্ত পরীক্ষা চালানোর অনুমতি দেয়।


0

আপনার প্রকল্পের জন্য পাইয়েস্ট সক্ষম করুন

  1. সেটিংস / পছন্দসমূহ খুলুন সরঞ্জাম | পাইথন ইন্টিগ্রেটেড টুলস সেটিংস ডায়ালগটি আপনার টেস্টিং ফ্রেমওয়ার্কটি বেছে নেওয়ার ক্ষেত্রে বর্ণিত রয়েছে।
  2. ইন ডিফল্ট পরীক্ষা রানার ক্ষেত্র নির্বাচন pytest
  3. সেটিংস সংরক্ষণ করতে ওকে ক্লিক করুন।

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

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