উত্তর:
পৃথক পরীক্ষার পদ্ধতি বা ক্লাস উভয়ই unittest.skip
সজ্জা ব্যবহার করে অক্ষম করা যায় ।
@unittest.skip("reason for skipping")
def test_foo():
print('This is foo test case.')
@unittest.skip # no reason needed
def test_bar():
print('This is bar test case.')
অন্যান্য বিকল্পের জন্য স্কিপিং পরীক্ষা এবং প্রত্যাশিত ব্যর্থতার জন্য ডকগুলি দেখুন ।
@unittest.skip
এটিও দুর্দান্ত কাজ করে works
@unittest.skip
কাজ করে না।
আপনি পরীক্ষাটি অক্ষম করতে সজ্জকারগুলি ব্যবহার করতে পারেন যা ফাংশনটি মোড়ানো করতে পারে এবং টেস্টকেস চালানোর জন্য গুগলতেস্ট বা পাইথন ইউনিট পরীক্ষা আটকাতে পারে।
def disabled(f):
def _decorator():
print f.__name__ + ' has been disabled'
return _decorator
@disabled
def testFoo():
'''Foo test case'''
print 'this is foo test case'
testFoo()
আউটপুট:
testFoo has been disabled
সর্বশেষতম সংস্করণ (২.7 - অপ্রকাশিত) পরীক্ষা স্কিপিং / অক্ষম করাটিকে সমর্থন করে । আপনি কেবলমাত্র এই মডিউলটি পেতে পারেন এবং এটি আপনার বিদ্যমান পাইথন ইনস্টল করতে ব্যবহার করতে পারেন। এটা সম্ভবত কাজ করবে।
এর আগে, আমি যে পরীক্ষাগুলি xtest_testname
থেকে এড়িয়ে যেতে চেয়েছিলাম তার পুনরায় নামকরণ করতাম test_testname
।
এটি করার জন্য এখানে একটি দ্রুত এলিস্প স্ক্রিপ্ট। আমার এলিসপটি একটু মরিচা হয় তাই এর যে কোনও সমস্যার জন্য আমি আগাম ক্ষমা চাই। অপরীক্ষিত।
(defun disable_enable_test ()
(interactive "")
(save-excursion
(beginning-of-line)
(search-forward "def")
(forward-char)
(if (looking-at "disable_")
(zap-to-char 1 ?_)
(insert "disable_"))))
কেবল @unittest.SkipTest
পরীক্ষার উপরে সজ্জা স্থাপন করা যথেষ্ট।
unittest.skip
(কারণ ছাড়াই) আমার পাইথন 2 ত্রুটি দেয় কিন্তু পাইথন 3. নেই
প্রশ্নের "সাময়িকভাবে অক্ষম" অংশটির দিকে দৃষ্টি নিবদ্ধ করে, সেরা উত্তরটি কিছুটা ব্যবহারের ক্ষেত্রে নির্ভর করে। যে ব্যবহারের বিষয়টি আমাকে এখানে এনেছে তা হ'ল আমি কোনও ফাংশনে টেস্ট চালিত বিকাশ করছি। এই প্রক্রিয়াটিতে, আমি ধারাবাহিকভাবে পরীক্ষা লিখি এবং প্রায়শই ডিবাগিংয়ের জন্য ফাংশনটিতে ব্রেক পয়েন্ট ব্যবহার করি। আমি যদি প্রতিবার পরীক্ষার রানার চালানোর জন্য সমস্ত পরীক্ষা চালিয়ে যাই তবে ইতিমধ্যে কাজ করে এমন পরীক্ষাগুলির ব্রেক ব্রেক পয়েন্টে আমি থামি। "স্কিপ" যুক্ত করা বা পরীক্ষার নামটি মিগিং করা বা এটির মতো কিছু যা আমি চাই না কারণ যখন আমি ফাংশনটি লেখার কাজ শেষ করি তখন আমি সমস্ত পরীক্ষা চালাতে চাই। আমি যদি "স্কিপ" ব্যবহার করি তবে আমাকে ফিরে যেতে হবে এবং "আনস্কিপ" করতে হবে।
আমার ব্যবহারের ক্ষেত্রে, সমাধানটি পরীক্ষার কোডে নয়, পরীক্ষার দৌড়ে রয়েছে। আমি ব্যবহার pytest । পাইস্টের সাহায্যে কমান্ড লাইন থেকে একটি একক পরীক্ষা নির্দিষ্ট করা সহজ:
পাইস্টেস্ট পিওয়াইথন_এফআইএল। TEST_CLASS.TEST_NAME
(ক্যাপগুলি আপনার মানগুলির সাথে প্রতিস্থাপন করুন)।
আমি বুঝতে পারি যে প্রশ্নটি ছিল অজগর-ইউনিটেস্টের জন্য। আমি একটি দীর্ঘ সময় ব্যবহার করে না। পাইয়েস্টের মতো কিছু মিললে আমি অবাক হব না। যদি তা না হয় তবে আপনি সহজেই পাইস্টে স্যুইচ করতে পারেন। আপনার কোডটি সংশোধন করার দরকার নেই। কেবল এটি ইনস্টল করুন এবং আপনার পরীক্ষার রানার কমান্ডটি পরিবর্তন করুন।
এছাড়াও, আমি পাইচার্ম প্রো ব্যবহার করি। যে পৃষ্ঠাতে আমার পরীক্ষার কোডটি দেখানো হয় সেখানে প্রতিটি পরীক্ষার জন্য ডিএফের পাশে একটি ছোট আইকন থাকে। আমি সেই আইকনটি ক্লিক করতে এবং পৃথকভাবে সেই পরীক্ষা চালাতে পারি।
@unittest.SkipTest
@unittest.skip