عنوان
توليد خودكار داده آزمون در فازرهاي قالب فايل
نويسنده اصلي
مرتضي ذاكري نصرابادي
مقطع تحصيلي
كارشناسي ارشد
چكيده
آزمون فازي (فازينگ) يك فن آزمون پوياي نرمافزار است. در اين فن با توليد و تزريق مكرر دادههاي آزمون بدشكل به نرمافزار تحت آزمون (SUT)، بهدنبال يافتن خطاها و آسيبپذيريهاي احتمالي موجود در آن هستيم. براي نيل به اين هدف، آزمون فازي نيازمند دادههاي آزمون متنوع است. مشكل اساسي، پيچيده بودن ساختار ورودي برنامههايي است كه فايل را بهعنوان ورودي ميپذيرند. بررسيها نشان ميدهد بسياري از دادههاي آزمون توليدي در اين موارد، مسيرهاي محدود و سطحي را ميپيمايند؛ زيرا در همان مراحل اوليه بهعلت بدشكل، بودن توسط تجزيهگرِ SUT رد ميشوند. استفاده از ساختار گرامري فايلها براي توليد دادهها، منجربه افزايش پوشش كد ميشود؛ اما، استخراج گرامر براي ساختار فايل، اغلب، دستي صورت ميپذيرد كه مستلزم صرف هزينه و زمان زياد و مستعد خطاي فراوان است. در اين پاياننامه، روشي خودكار براي توليد داده آزمون بهصورت تركيبي ارائه ميدهيم. در روش خود، از مدلهاي زباني عصبي NLM)) كه با شبكههاي عصبي مكرر RNN)) ساخته ميشوند، استفاده ميكنيم. مدلهاي پيشنهادي با فنون يادگيري ژرف، قادر به يادگيري آماري ساختار فايلهاي پيچيده و سپس توليد دادههاي جديد متني، بهصورت مبتني بر گرامر و دادههاي دودويي بهصورت مبتني بر جابهجايي، هستند. فاز (بدشكلسازي) دادههاي آزمون، نيز توسط دو الگوريتم فاز جديد، تحت عنوان الگوريتمهاي فاز عصبي، كه از اين مدلها استفاده ميكنند، صورت ميپذيرد. از روش پيشنهادي خود، براي توليد داده و سپس آزمون فازي نرمافزار پيچيده MuPDF كه فايلهاي قالبِ سندِ حملپذير (PDF) را بهعنوان ورودي ميپذيرد، استفاده نموديم. براي آموزش مدلهاي مولد، يك پيكره بزرگ از فايلهاي PDF را گردآوري كرديم. آزمايشهاي ما نشان ميدهد كه دادههاي توليد شده با اين روش، منجربه افزايش ميزان پوشش كد اجرايي SUT و بهبود بيش از 7 درصدي آن، در مقايسه با فازرهاي قالب فايل مشهور، مثل AFL، ميشود. آزمايشها همچنين، بيانگر دقت يادگيري بهترِ NLMهاي سادهتر در قياس با مدل پيچيدهتر كدگذار-كدگشا و نيز شكست اين مدل، در ميزان پوشش كد SUT، حين آزمون فازي، هستند.
شماره ركورد
192207
دانشگاه
دانشگاه علم و صنعت ايران
رشته تحصيلي
مهندسي كامپيوتر
استاد راهنما
دكتر سعيد پارسا