162,167 research outputs found

    Retromorphic Testing: A New Approach to the Test Oracle Problem

    Full text link
    A test oracle serves as a criterion or mechanism to assess the correspondence between software output and the anticipated behavior for a given input set. In automated testing, black-box techniques, known for their non-intrusive nature in test oracle construction, are widely used, including notable methodologies like differential testing and metamorphic testing. Inspired by the mathematical concept of inverse function, we present Retromorphic Testing, a novel black-box testing methodology. It leverages an auxiliary program in conjunction with the program under test, which establishes a dual-program structure consisting of a forward program and a backward program. The input data is first processed by the forward program and then its program output is reversed to its original input format using the backward program. In particular, the auxiliary program can operate as either the forward or backward program, leading to different testing modes. The process concludes by examining the relationship between the initial input and the transformed output within the input domain. For example, to test the implementation of the sine function sin(x)\sin(x), we can employ its inverse function, arcsin(x)\arcsin(x), and validate the equation x=sin(arcsin(x)+2kπ),kZx = \sin(\arcsin(x)+2k\pi), \forall k \in \mathbb{Z}. In addition to the high-level concept of Retromorphic Testing, this paper presents its three testing modes with illustrative use cases across diverse programs, including algorithms, traditional software, and AI applications

    Validation & Verification of an EDA automated synthesis tool

    Get PDF
    Reliability and correctness are two mandatory features for automated synthesis tools. To reach the goals several campaigns of Validation and Verification (V&V) are needed. The paper presents the extensive efforts set up to prove the correctness of a newly developed EDA automated synthesis tool. The target tool, MarciaTesta, is a multi-platform automatic generator of test programs for microprocessors' caches. Getting in input the selected March Test and some architectural details about the target cache memory, the tool automatically generates the assembly level program to be run as Software Based Self-Testing (SBST). The equivalence between the original March Test, the automatically generated Assembly program, and the intermediate C/C++ program have been proved resorting to sophisticated logging mechanisms. A set of proved libraries has been generated and extensively used during the tool development. A detailed analysis of the lessons learned is reporte

    Developing and Evaluating Cognitive Architectures with Behavioural Tests

    Get PDF
    http://www.aaai.org/Press/Reports/Workshops/ws-07-04.phpWe present a methodology for developing and evaluating cognitive architectures based on behavioural tests and suitable optimisation algorithms. Behavioural tests are used to clarify those aspects of an architecture's implementation which are critical to that theory. By fitting the performance of the architecture to observed behaviour, values for the architecture's parameters can be automatically obtained, and information can be derived about how components of the architecture relate to performance. Finally, with an appropriate optimisation algorithm, different cognitive architectures can be evaluated, and their performances compared on multiple tasks.Peer reviewe

    An improved cell controller for the aerospace manufacturing

    Get PDF
    The aerospace manufacturing industry is unique in that production typically focuses on high variety and quality but low volume. Existing flexible manufacturing cells are limited to certain types of machines, robots and cells which makes it difficult to introduce any changes. In this paper idea of treating machines, robots, any hardware and software as resource has been introduced. It describes the development of the Flexa Cell Coordinator (FCC), a system that is providing a solution to manage cells and their resources in a new flexible manner. It can control, organise and coordinate between cells and resources and is capable of controlling remote cells because of its distributed nature. It also provides connectivity with company systems e.g., Enterprise Resource Planner (ERP). It is extendable and capable of adding multiple cells inside the system. In FCC resources (e.g., tracker) can also be shared between cells. The paper presents its development and results of initial successful testing

    Functional Requirements-Based Automated Testing for Avionics

    Full text link
    We propose and demonstrate a method for the reduction of testing effort in safety-critical software development using DO-178 guidance. We achieve this through the application of Bounded Model Checking (BMC) to formal low-level requirements, in order to generate tests automatically that are good enough to replace existing labor-intensive test writing procedures while maintaining independence from implementation artefacts. Given that existing manual processes are often empirical and subjective, we begin by formally defining a metric, which extends recognized best practice from code coverage analysis strategies to generate tests that adequately cover the requirements. We then formulate the automated test generation procedure and apply its prototype in case studies with industrial partners. In review, the method developed here is demonstrated to significantly reduce the human effort for the qualification of software products under DO-178 guidance
    corecore