জ্যাঙ্গোতে আপনি ইউনিট পরীক্ষা কীভাবে এড়িয়ে যাবেন?


96

জ্যাংগোতে জোর করে ইউনিট পরীক্ষা কীভাবে বাদ দেওয়া যায়?

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

উত্তর:


152

পাইথনের ইউনিটেস্ট মডিউলে কয়েকটি সজ্জা রয়েছে:

সরল পুরানো আছে @skip:

from unittest import skip

@skip("Don't want to test")
def test_something():
    ...

আপনি যদি @skipকোনও কারণে ব্যবহার করতে না পারেন তবে @skipIfকাজ করা উচিত। যুক্তি দিয়ে সর্বদা এড়াতে কেবল এটি চালিত করুন True:

@skipIf(True, "I don't want to run this test yet")
def test_something():
    ...

ইউনিটেস্ট ডকস

স্কিপিং টেস্টে ডক্স

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


আহ, আমি জানতাম না যে আপনি সত্যিকারের যুক্তি দিয়ে দোভাষীকে ঠকাতে পারেন। ধন্যবাদ!
user798719

আপনি ব্যবহার না করতে পারার সম্ভাব্য কারণগুলিতে বিস্তারিত ব্যাখ্যা করতে পারেন @skip?
কাল

4
এমনকি আপনি টেস্টকেস ক্লাসগুলি এড়িয়ে যেতে পারেন।
wieczorek1990

69

জাজানো 1.10 ইউনিট পরীক্ষার জন্য ট্যাগ ব্যবহারের অনুমতি দেয় । তারপরে আপনি --exclude-tag=tag_nameনির্দিষ্ট ট্যাগগুলি বাদ দিতে পতাকাটি ব্যবহার করতে পারেন :

from django.test import tag

class SampleTestCase(TestCase):

    @tag('fast')
    def test_fast(self):
        ...

    @tag('slow')
    def test_slow(self):
        ...

    @tag('slow', 'core')
    def test_slow_but_core(self):
        ...

উপরের উদাহরণে, slowআপনি যে ট্যাগটি চালিয়ে যাবেন তা দিয়ে আপনার পরীক্ষাগুলি বাদ দিতে :

$ ./manage.py test --exclude-tag=slow

এর বিপরীতে কি আছে --exclude-tag, উদাহরণস্বরূপ --include-tagতবে এই আদেশটি অস্তিত্বহীন।
জননিকিউ

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