An automated framework for software test oracle

نویسندگان

  • Seyed Reza Shahamiri
  • Wan M. N. Wan-Kadir
  • Suhaimi Ibrahim
  • Siti Zaiton Mohd Hashim
چکیده

Context: One of the important issues of software testing is to provide an automated test oracle. Test oracles are reliable sources of how the software under test must operate. In particular, they are used to evaluate the actual results that produced by the software. However, in order to generate an automated test oracle, oracle challenges need to be addressed. These challenges are output-domain generation, input domain to output domain mapping, and a comparator to decide on the accuracy of the actual outputs. Objective: This paper proposes an automated test oracle framework to address all of these challenges. Method: I/O Relationship Analysis is used to generate the output domain automatically and MultiNetworks Oracles based on artificial neural networks are introduced to handle the second challenge. The last challenge is addressed using an automated comparator that adjusts the oracle precision by defining the comparison tolerance. The proposed approach was evaluated using an industry strength case study, which was injected with some faults. The quality of the proposed oracle was measured by assessing its accuracy, precision, misclassification error and practicality. Mutation testing was considered to provide the evaluation framework by implementing two different versions of the case study: a Golden Version and a Mutated Version. Furthermore, a comparative study between the existing automated oracles and the proposed one is provided based on which challenges they can automate. Results: Results indicate that the proposed approach automated the oracle generation process 97% in this experiment. Accuracy of the proposed oracle was up to 98.26%, and the oracle detected up to 97.7% of the injected faults. Conclusion: Consequently, the results of the study highlight the practicality of the proposed oracle in addition to the automation it offers. 2011 Elsevier B.V. All rights reserved.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

DART: A Framework for Regression Testing "Nightly/daily Builds" of GUI Applications

“Nightly/daily building and smoke testing” have become widespread since they often reveal bugs early in the software development process. During these builds, software is compiled, linked, and (re)tested with the goal of validating its basic functionality. Although successful for conventional software, smoke tests are difficult to develop and automatically rerun for software that has a graphica...

متن کامل

An Extensible Framework to Implement Test Oracle for Non-Testable Programs

Test oracles evaluate the execution of SUTs (Systems Under Test) supporting testers to decide about correct outputs and behaviors. “Non-testable” systems are cases in which the testers must spend extraordinary efforts to judge SUT’s outputs. Currently, some contemporary non-testable programs are represented by systems with complex outputs such as GUIs (Graphical User Interface), Web application...

متن کامل

Automated Test Oracle Methods

Software testing is used to improve software quality by finding fault in the software. To verify the software behavior, testers require test oracle, which is a reliable source of expected software behavior and provides outputs for any input specified in the software specifications and a comparator to verify actual results generated by the software. While test automation requires automated oracl...

متن کامل

An Extensible Framework to Implement Test Oracles for Non-Testable Programs

Test oracles evaluate the execution of SUTs (Systems Under Test) supporting testers to decide about correct outputs and behaviors. “Non-testable” systems are cases in which the testers must spend extraordinary efforts to judge SUT’s outputs. Currently, some contemporary non-testable programs are represented by systems with complex outputs such as GUIs (Graphical User Interface), Web application...

متن کامل

Automating regression testing for evolving GUI software

With the widespread deployment of broadband connections worldwide, software development and maintenance are increasingly being done by multiple engineers, often working around-theclock to maximize code churn rates. To ensure rapid quality assurance of such software, techniques such as “nightly/daily building and smoke testing” have become widespread since they often reveal bugs early in the sof...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • Information & Software Technology

دوره 53  شماره 

صفحات  -

تاریخ انتشار 2011