به جمع مشترکان مگیران بپیوندید!

تنها با پرداخت 70 هزارتومان حق اشتراک سالانه به متن مقالات دسترسی داشته باشید و 100 مقاله را بدون هزینه دیگری دریافت کنید.

برای پرداخت حق اشتراک اگر عضو هستید وارد شوید در غیر این صورت حساب کاربری جدید ایجاد کنید

عضویت
جستجوی مقالات مرتبط با کلیدواژه

code coverage

در نشریات گروه پدافند غیرعامل
تکرار جستجوی کلیدواژه code coverage در نشریات گروه فنی و مهندسی
تکرار جستجوی کلیدواژه code coverage در مقالات مجلات علمی
  • صادق بجانی*، امیرحسین کی منش

    تولید داده آزمون، یکی از بخش های پرهزینه در آزمون نرم افزار است که با توجه به موارد آزمون طراحی شده، انجام می شود. مسیله ی طراحی موارد آزمون و سپس تولید داده آزمون بهینه، یکی از چالش های موجود در آزمون نرم افزار، ازجمله فن آزمون جهش است. آزمون جهش، این توانایی را دارد که کیفیت موارد آزمون را بسنجد و موارد آزمون باکفایت را مشخص نماید. بااین حال، برای انجام آزمون جهش، به مجموعه آزمونی نیاز است که بتواند کد منبع را به صورت حداکثری پوشش دهد و از این طریق، توانایی شناسایی خطاهای برنامه را داشته باشد. در این مقاله، از فنون پوشش کد، برای طراحی موارد آزمون و از الگوریتم فرا-ابتکاری FA-MABC برای تولید خودکار داده آزمون بهینه، استفاده می شود. نتایج این کار، مجموعه آزمونی است که می تواند حداکثر خطوط کد منبع را پوشش داده و آزمون کند. چنین مجموعه آزمونی، توانایی بالایی در شناسایی خطاهای برنامه دارد و در آزمون جهش، امتیاز بالایی کسب می کند. در روش پیشنهادی، برای رسیدن به موارد آزمون موثر، ابتدا موارد آزمون طراحی شده، در آزمون جهش اعمال می شوند و با استفاده از جدول جهش های خاموش شده، موارد آزمون موثر استخراج می شوند. نتایج ارزیابی، نشان می دهد که الگوریتم FA-MABC، موجب کاهش هزینه زمانی در تولید داده آزمون می شود و معیار پوشش «شرط اصلاح شده / تصمیم»، موجب افزایش امتیاز جهش می شود.

    کلید واژگان: تولید خودکار داده آزمون بهینه، آزمون جهش، الگوریتم FA-MABC، پوشش کد، موارد آزمون موثر
    Sadegh Bejani *, AmirHossein Keymanesh

    Test data generation is one of the costly parts of the software testing, which is performed according to the designed test cases. The problem of designing test cases and then generating optimized test data is one of the challenges of the software testing, including the mutation testing technique. mutation testing has the ability to measure the test cases quality and determine the adequate test cases. However, to perform mutation testing, you need a test set that provides the maximize Coverage of source code and thus have the ability to identify the program errors. In this work, we use code coverage techniques to design test cases and automatically generate optimized test data using the meta-heuristic FA-MABC algorithm. The results are a test suite that cover and test the maximum number of source code lines. Such test suite is more likely to identify errors and get a higher score in the mutation testing. In the proposed method to obtain effective test cases, first generated test cases are applied to mutation testing and then effective test cases are extracted using the Extinguished mutation table. The results of the evaluation show that the FA-MABC algorithm reduces the time of the test data generation, and “modified condition / decision coverage”, increases the mutation score.

    Keywords: Automatically Generate Optimized Test Data, Mutation Testing, FA-MABC Algorithm, code coverage, Effective Test Cases
  • مرتضی ذاکری نصرآبادی، سعید پارسا*
    آزمون فازی یک فن آزمون پویای نرم افزار است. در این فن با تولید ورودی های بدشکل و تزریق پی در پی آن ها به نرم افزار تحت آزمون، دنبال یافتن خطا ها و آسیب پذیری های احتمالی آن هستیم. ورودی اصلی بسیاری از نرم افزارهای دنیای واقعی فایل است. تعداد زیادی از داده های آزمون که برای آزمون فازی این نرم افزارها تولید می شوند در همان مراحل اولیه به علت نداشتن قالب مورد قبول، توسط پویش گر فایل برنامه رد می شوند. در نتیجه شاهد پوشش کم کد برنامه در روند آزمون فازی هستیم. استفاده از گرامر ساختار فایل برای تولید داده آزمون، منجربه افزایش پوشش کد می گردد، اما این گرامر معمولا به صورت دستی تهیه می شود که کاری زمان بر، پرهزینه و مستعد خطا است. در این مقاله روشی نو با استفاده از مدل های زبانی عصبی ژرف برای یادگیری خودکار ساختار فایل و سپس تولید و فاز داده های آزمون ارایه شده است. آزمایش های ما بهبود پوشش کد روش پیشنهادی را در مقایسه با دیگر روش های تولید داده آزمون نشان می دهد. برای نرم افزار MuPDF که قالب فایل پیچیده PDF را به عنوان ورودی می پذیرد، بیش از 30/1 تا 12 درصد بهبود پوشش کد را نسبت به روش های هوشمند و روش تصادفی داشته ایم.
    کلید واژگان: آزمون فازی، داده آزمون، پوشش کد، شبکه عصبی مکرر، مدل زبانی، یادگیری ژرف
    M. Z.Akeri Nasrabadi, S. Parsa *
    Fuzzing is a dynamic software testing technique. In this technique with repeated generation and injection of malformed test data to the software under test (SUT), we are looking for the possible errors and vulnerabilities. Files are significant inputs to most real-world applications. Many of test data which are generated for fuzzing such programs are rejected by the parser because they are not in the acceptable format and this results in a low code coverage in the process of fuzz testing. Using the grammatical structure of input files to generate test data leads to increase code coverage. However, often, the grammar extraction is performed manually, which is a time consuming, costly and error-prone task. In this paper, a new method, based on deep neural language models (NLMs), is proposed for automatically learning the file structure and then generating and fuzzing test data. Our experiments demonstrate that the data produced by this method leads to an increase in the code coverage compared to previous test data generation methods. For MuPDF software, which accepts the PDF complex file format as an input, we have more than 1.30 to 12 percent improvement in code coverage than both the intelligence and random methods.
    Keywords: Fuzz Testing, test data, code coverage, recurrent neural network, language model, deep learning
نکته
  • نتایج بر اساس تاریخ انتشار مرتب شده‌اند.
  • کلیدواژه مورد نظر شما تنها در فیلد کلیدواژگان مقالات جستجو شده‌است. به منظور حذف نتایج غیر مرتبط، جستجو تنها در مقالات مجلاتی انجام شده که با مجله ماخذ هم موضوع هستند.
  • در صورتی که می‌خواهید جستجو را در همه موضوعات و با شرایط دیگر تکرار کنید به صفحه جستجوی پیشرفته مجلات مراجعه کنید.
درخواست پشتیبانی - گزارش اشکال