.
tl.testing বিভিন্ন পরীক্ষা লেখার সময় ব্যবহার করা যেতে পারে যে ইউটিলিটি & nbsp; এটা পাইথন সংস্করণ 2.6 এবং 2.7 সামঞ্জস্যপূর্ণ.
ডিরেক্টরি এবং ফাইল স্যান্ডবক্সে
ডিরেক্টরি এবং ফাইল পরিবর্তন করা কোড পরীক্ষা হলে, এটি সহজে ডিরেক্টরি এবং ফাইল একটি নমুনা ট্রি তৈরি এবং পরিদর্শন করা সক্ষম হতে দরকারী. tl.testing.fs মডিউল, একটি টেক্সচুয়াল বর্ণনা থেকে একটি গাছ তৈরি একই বিন্যাসে এটি তালিকা এবং নিজেই পরে পরিষ্কার জন্য সমর্থন উপলব্ধ করা হয়.
একটি নথি পরীক্ষা, এই সুবিধা একটি ডিরেক্টরি, একটি ফাইল এবং একটি সিম্বলিক লিঙ্ক তৈরি এবং তালিকা ভালো ব্যবহার করা যেতে পারে:
>>> Tl.testing.fs আমদানি new_sandbox থেকে, ম
>>> New_sandbox ("" "
... ঘ foo বিন্যাস
... চ / foo বার asdf ও
... ঠ Baz -> foo বিন্যাস / বার
... "" ")
>>> ম ()
ঠ Baz -> foo বিন্যাস / বার
ঘ foo বিন্যাস
চ / foo বার asdf ও
সেট আপ করুন এবং ফাইল-সিস্টেম স্যান্ডবক্সে ব্যবহার করে পরীক্ষা বিছিন্ন করা ডাউন সহ আরও পরামর্শ, সোর্স কোড পাওয়া ফাইল fs.txt দেখুন.
ইনস্টল callable স্ক্রিপ্ট
এক পরীক্ষা করতে চান পারে কিছু কার্যকারিতা যেমন একটি পেজার বা একটি টেক্সট এডিটর যেমন বহিস্থিত প্রোগ্রাম ব্যবহার করে. tl.testing.script মডিউল কোড তাদের খুঁজে পেতে হবে পরীক্ষা করা জায়গা যেখানে সহজ উপহাস স্ক্রিপ্ট ইনস্টল ইউটিলিটি উপলব্ধ করা হয়. তারা পাইথন কোড একটি স্ট্রিং নিয়ে পরীক্ষা যে মেলে পাইথন পথ সেট এবং কোড সঞ্চালিত হয় যে একটি লেফাফা স্ক্রিপ্ট তৈরি করুন.
এই যেমন একটি উপহাস স্ক্রিপ্ট ডক পরীক্ষা ব্যবহার করা উচিত:
>>> Tl.testing.script আমদানি থেকে ইনস্টল
>>> Script_path = ("মুদ্রণ 'একটি সহজ স্ক্রিপ্ট.") ইনস্টল
>>> মুদ্রণ খোলা (script_path) ভুক্তি ()
# ...
আমদানি sys
sys.path [:] = [...]
মুদ্রণ 'একটি সহজ স্ক্রিপ্ট.'
>>> আমদানি subprocess
>>> সাব = subprocess.Popen (script_path, শেল = সত্য, stdout- এ = subprocess.PIPE)
>>> Stdout- এ, দ্বারা stderr = sub.communicate ()
>>> মুদ্রণ stdout- এ
একটি সহজ স্ক্রিপ্ট.
উপহাস স্ক্রিপ্ট ব্যবহার করে আরও সম্ভাবনার কিভাবে ইনস্টল করতে এবং এক্সেস উপহাস স্ক্রিপ্ট সেইসাথে বিছিন্ন করা ডাউন পরীক্ষার জন্য সোর্স কোড সহ পাওয়া যায় ফাইল script.txt দেখুন.
ডক-পরীক্ষার কায়রো পৃষ্ঠতলের গ্রাফিকাল কন্টেন্ট
এটা, পাইথন কোড দুই কায়রো পৃষ্ঠতলের কন্টেন্ট তুলনা অকপট যদিও গ্রাফিক্স পরিচালনার ডক পরীক্ষা পরলোক হল. তবে, Manuel প্যাকেজ একটি প্রাকৃতিক উপায়ে ডক পরীক্ষা সঙ্গে তাদের মিশ্রিত করা, যার ফলে যখন একটি পাঠ্য নথি থেকে আরও সাধারণ পরীক্ষা ক্ষেত্রে নিষ্কাশন ব্যবহার করা যেতে পারে.
tl.testing.cairo মডিউল পুনর্গঠন টেক্সট পরিসংখ্যান হিসাবে প্রণয়ন গ্রাফিকাল পরীক্ষা চালানো Manuel ব্যবহার করে এমন একটি পরীক্ষা স্যুট কারখানা উপলব্ধ করা হয়. যেমন একটি চিত্র ক্যাপশন যার মান একটি কায়রো পৃষ্ঠ একটি আক্ষরিক পাইথন মত প্রকাশের হতে অনুমিত হয়, এবং তার ইমেজ পরীক্ষা প্রত্যাশা হিসাবে ব্যবহৃত হয়.
এটি একটি পৃষ্ঠ একটি নথি পরীক্ষা একটি প্রত্যাশিত ইমেজ তুলনা করা যেতে পারে:
>>> আমদানি কায়রো
>>> Pkg_resources আমদানি resource_filename থেকে
>>> ইমেজ = resource_filename ('tl.testing', 'testimages / correct.png')
.. :: চিত্র TL / পরীক্ষার / testimages / correct.png
& Nbsp; `` cairo.ImageSurface.create_from_png (ইমেজ) ``
আরও পরামর্শ এবং সম্ভব পরীক্ষা আউটপুট ডকুমেন্টেশন জন্য সোর্স কোড সহ পাওয়া যায় ফাইল cairo.txt দেখুন.
পরীক্ষা কোড থ্রেড সঙ্গে কাজ
মান TestCase বর্গ প্রধান এক ছাড়া অন্য থ্রেডের মধ্যে যে ঘটেছে এবং ব্যর্থতা সংগ্রহ করা হয় না. tl.testing.thread মডিউল থ্রেড ক্লাস উপলব্ধ করা হয় এবং একটি ThreadAwareTestCase বর্গ ঠিক যে, সেইসাথে থ্রেড সঙ্গে যে কারবার পরীক্ষার জন্য অন্য কিছু সুবিধা অনুমতি: পরীক্ষা আউটপুট সঙ্গে ছাপা হওয়া থেকে থ্রেডের মধ্যে প্রত্যাশিত unhandled ব্যতিক্রম প্রতিরোধ, রিপোর্ট থ্রেড বামে পিছনে একটি পরীক্ষা, একটি ডেমন থ্রেড কোড চলমান থ্রেডের যোগদান এবং বেড়ে চলেছে দ্বারা থ্রেড পরীক্ষা এর চালানোর সময় শুরু:
>>> আমদানি সময়
>>> আমদানি tl.testing.thread
>>> বর্গ SampleTest (tl.testing.thread.ThreadAwareTestCase):
...
... Def (আত্ম) test_error_in_thread_should_be_reported:
... Tl.testing.thread.ThreadJoiner (1):
... Self.run_in_thread (ল্যামডা: 1/0)
...
... Def test_active_count_should_count_only_new_threads (স্ব):
... Tl.testing.thread.ThreadJoiner (1):
... Self.run_in_thread (ল্যামডা: time.sleep (0.1))
... Self.assertEqual (1, self.active_count ())
... Self.assertEqual (0, self.active_count ())
>>> আমদানি unittest
>>> রান (unittest.makeSuite (SampleTest))
================================================== ====================
ত্রুটি: test_error_in_thread_should_be_reported (__builtin __ SampleTest.)
-------------------------------------------------- --------------------
ট্রেসব্যাক (সবচেয়ে সাম্প্রতিক কল শেষ):
& Nbsp; ...
ZeroDivisionError: পূর্ণসংখ্যা বিভাগ বা শূন্য দ্বারা মডিউল
-------------------------------------------------- --------------------
N.NNNs মধ্যে 2 পরীক্ষা দৌড়ে
ব্যর্থ হয়েছে (ত্রুটি = 1)
ThreadAwareTestCase বর্গ আরও বিস্তারিত জানার জন্য সোর্স কোড সহ পাওয়া thread.txt ফাইলটি দেখুন.
Manuel ব্যবহার করে পরীক্ষা Suites নির্মাতা
Manuel মান doctests ছাড়াও কিছু শক্তিশালী বৈশিষ্ট্য উপলব্ধ করা হয়, Manuel পরীক্ষা Suites সামান্য ভিন্নভাবে মান বেশী থেকে সেট আপ করা হয়. tl.testing.doctest মডিউল, তাদের মধ্যে অবচিত ব্যবহার করা ব্যবহৃত পাদটীকা ব্যাখ্যা করার ক্ষমতা মান এক মত ব্যবহার কিন্তু Manuel ব্যবহার করে একটি পরীক্ষা স্যুট তৈরি করে এবং Manuel এর সাথে সম্পর্কিত কিছু অতিরিক্ত কনফিগারেশন করতে পারবেন করা যেতে পারে একটি DocFileSuite কারখানা কার্যকরী zope.testing.doctest:
>>> Sample_txt = লেখার ('sample.txt', "" "
... [#footnote] _
... >>> এক্স
... 1
...
... .. [#footnote]
... >>> এক্স = 1
... "" ")
>>> Tl.testing.doctest আমদানি DocFileSuite থেকে
>>> রান (DocFileSuite (sample_txt, পাদটীকা = সত্য))
-------------------------------------------------- --------------------
N.NNNs 1 পরীক্ষা দৌড়ে
ঠিক আছে
>>> Sample_txt = লেখার ('sample.txt', "" "
... .. কোড ব্লক :: ময়াল সাপ
... এক্স = 1
...
... >>> এক্স
... 1
... "" ")
>>> আমদানি manuel.codeblock
>>> রান (DocFileSuite (sample_txt, Manuel manuel.codeblock.Manuel = ()))
-------------------------------------------------- --------------------
N.NNNs 1 পরীক্ষা দৌড়ে
ঠিক আছে?
আবশ্যক
- পাইথন
পাওয়া মন্তব্যসমূহ না