54,543 research outputs found
Testing by Dualization
Software engineering requires rigorous testing to guarantee the product's
quality. Semantic testing of functional correctness is challenged by
nondeterminism in behavior, which makes testers difficult to write and reason
about.
This thesis presents a language-based technique for testing interactive
systems. I propose a theory for specifying and validating nondeterministic
behaviors, with guaranteed soundness and correctness. I then apply the theory
to testing practices, and show how to derive specifications into interactive
tester programs. I also introduce a language design for producing test inputs
that can effectively detect and reproduce invalid behaviors.
I evaluate the methodology by specifying and testing real-world systems such
as web servers and file synchronizers, demonstrating the derived testers'
ability to find disagreements between the specification and the implementation
Design, Manufacturing and Integration of LHC Cryostat Components: an Example of Collaboration between CERN and Industry
The components for the LHC cryostats and interconnections are supplied by European industry. The manufacturing, assembly and testing of these components in accordance with CERN technical specifications require a close collaboration and dedicated approach from the suppliers. This paper presents the different phases of design, manufacturing, testing and integration of four LHC cryostat components supplied by RIAL Vacuum (Parma, Italy), including 112 Insulation Vacuum Barriers (IVB), 482 Cold-mass Extension Tubes (CET), 121 cryostat vacuum vessel Jumper Elbows (JE) and 10800 Interconnection Sleeves (IS). The Quality Assurance Plan, which the four projects have in common, is outlined. The components are all leak-tight thin stainless steel assemblies (<10-8 mbar l/s), most of them operating at cryogenic temperature (2 K), however each having specific requirements. The particularities of each component are presented with respect to manufacturing, assembly and testing. These components are being integrated at CERN into the LHC cryostats and interconnections, thus validating the design and production quality. The major difficulties and improvements are discussed
Recommended from our members
Unifying regression testing with mutation testing
textSoftware testing is the most commonly used methodology for validating quality of software systems. Conceptually, testing is simple, but in practice, given the huge (practically infinite) space of inputs to test against, it requires solving a number of challenging problems, including evaluating and reusing tests efficiently and effectively as software evolves. While software testing research has seen much progress in recent years, many crucial bugs still evade state-of-the-art approaches and cause significant monetary losses and sometimes are responsible for loss of life. My thesis is that a unified, bi-dimensional, change-driven methodology can form the basis of novel techniques and tools that can make testing significantly more effective and efficient, and allow us to find more bugs at a reduced cost. We propose a novel unification of the following two dimensions of change: (1) real manual changes made by programmers, e.g., as commonly used to support more effective and efficient regression testing techniques; and (2) mechanically introduced changes to code or specifications, e.g., as originally conceived in mutation testing for evaluating quality of test suites. We believe such unification can lay the foundation of a scalable and highly effective methodology for testing and maintaining real software systems. The primary contribution of my thesis is two-fold. One, it introduces new techniques to address central problems in both regression testing (e.g., test prioritization) and mutation testing (e.g., selective mutation testing). Two, it introduces a new methodology that uses the foundations of regression testing to speed up mutation testing, and also uses the foundations of mutation testing to help with the fault localization problem raised in regression testing. The central ideas are embodied in a suite of prototype tools. Rigorous experimental evaluation is used to validate the efficacy of the proposed techniques using a variety of real-world Java programs.Electrical and Computer Engineerin
JWalk: a tool for lazy, systematic testing of java classes by design introspection and user interaction
Popular software testing tools, such as JUnit, allow frequent retesting of modified code; yet the manually created test scripts are often seriously incomplete. A unit-testing tool called JWalk has therefore been developed to address the need for systematic unit testing within the context of agile methods. The tool operates directly on the compiled code for Java classes and uses a new lazy method for inducing the changing design of a class on the fly. This is achieved partly through introspection, using Java’s reflection capability, and partly through interaction with the user, constructing and saving test oracles on the fly. Predictive rules reduce the number of oracle values that must be confirmed by the tester. Without human intervention, JWalk performs bounded exhaustive exploration of the class’s method protocols and may be directed to explore the space of algebraic constructions, or the intended design state-space of the tested class. With some human interaction, JWalk performs up to the equivalent of fully automated state-based testing, from a specification that was acquired incrementally
Formal verification and testing: An integrated approach to validating Ada programs
An integrated set of tools called a validation environment is proposed to support the validation of Ada programs by a combination of methods. A Modular Ada Validation Environment (MAVEN) is described which proposes a context in which formal verification can fit into the industrial development of Ada software
Testing By Dualization
Software engineering requires rigorous testing to guarantee the product\u27s quality. Semantic testing of functional correctness is challenged by nondeterminism in behavior, which makes testers difficult to write and reason about.
This thesis presents a language-based technique for testing interactive systems. I propose a theory for specifying and validating nondeterministic behaviors, with guaranteed soundness and correctness. I then apply the theory to testing practices, and show how to derive specifications into interactive tester programs. I also introduce a language design for producing test inputs that can effectively detect and reproduce invalid behaviors.
I evaluate the methodology by specifying and testing real-world systems such as web servers and file synchronizers, demonstrating the derived testers\u27 ability to find disagreements between the specification and the implementation
Monitoring and Assessing the Use of External Quality Review Organizations to Improve Services for Young Children: A Toolkit for State Medicaid Agencies
Assesses the extent to which states use external quality review organizations in studying the quality of preventive and developmental services for young children enrolled in Medicaid, and provides guidance on determining their scope of work
Metamodel-based model conformance and multiview consistency checking
Model-driven development, using languages such as UML and BON, often makes use of multiple diagrams (e.g., class and sequence diagrams) when modeling systems. These diagrams, presenting different views of a system of interest, may be inconsistent. A metamodel provides a unifying framework in which to ensure and check consistency, while at the same time providing the means to distinguish between valid and invalid models, that is, conformance. Two formal specifications of the metamodel for an object-oriented modeling language are presented, and it is shown how to use these specifications for model conformance and multiview consistency checking. Comparisons are made in terms of completeness and the level of automation each provide for checking multiview consistency and model conformance. The lessons learned from applying formal techniques to the problems of metamodeling, model conformance, and multiview consistency checking are summarized
- …