6 research outputs found

    Test Coverage Analysis by Diffing Production Logs Against Integration Test Logs

    Get PDF
    This disclosure describes tools and techniques to analyze input and configuration coverage of software by performing large scale analysis of production and integration test data in a privacy-compliant manner. Test coverage analysis is made possible for highly complex input schema or for input schema that evolve with time. The techniques uncover the input-subspace that has been thus far integration-tested and the input-subspace that remains untested (known as test-gaps). When gathering data on how a specific software input/configuration is used in production, the techniques determine not only if they are used, but also how often they are used. Such data can help a developer evaluate the severity associated with a specific test gap

    Critical User Journey Test Coverage

    Get PDF
    In the space of software testing, making sure that all critical user scenarios or journeys (CUJs) in a product have been tested is important. A CUJ is essentially a series of steps in the product taken by users of the product to achieve a desired outcome. Ensuring CUJ coverage during testing is a difficult problem that often requires subject matter experts to identify critical scenarios and expensive manual efforts to track coverage. This disclosure describes automatic extraction of CUJs based on analysis of test logs and production logs, e.g., traffic logs at a website. Data mining techniques are applied to merge various sources of data, deduce critical user journeys, and prioritize them during testing. Code release can be gated based on test coverage of a threshold proportion of the identified CUJ

    Validating Software Functionality Across Combinations of Runtime Configurations

    Get PDF
    As the number of configurable attributes of software under test grows and the cardinality of those attributes increases, the efficiency of software verification rapidly declines. This disclosure describes techniques to determine test coverage gaps in multidimensional configuration spaces of substantial cardinality by enabling a software developer to define a set of rules associated with a feature and by forming a Boolean algebra over a coverage matrix that defines the required test coverage. Test coverage is tracked and presented on a dashboard. Release can be blocked automatically if the test coverage gap is beyond a threshold. Based on the coverage matrix, untested combinations of configurations can be detected and individual compatibility tests to verify functionality can be designed. By dynamically maintaining the allowed values of the configuration space, intelligent prioritization of coverage becomes possible. Software testability is sustained in the face of exponential dimensional growth

    Sociology and international relations: legacies and prospects

    Get PDF
    While sociological concepts have often been implicitly used in International Relations (IR), recent years have seen a more explicit engagement between IR and Sociology. As with any such interdisciplinary assignation, there are both possibilities and challenges contained within this move: possibilities in terms of reducing IR's intellectual autism and opening the discipline towards potentially fertile terrain that was never, actually, that distant; challenges in that interdisciplinary raiding parties can often serve as pseudonyms for cannibalism, shallowness and dilettantism. This forum reviews the sociological turn in IR and interrogates it from a novel vantage point—how sociologists themselves approach IR concepts, debates and issues. Three sociological approaches—classical social theory, historical sociology and Foucauldian analysis—are critically deployed to illuminate IR concerns. In this way, the forum offers the possibility of (re)establishing exchanges between the two disciplines premised on a firmer grasp of social theory itself. The result is a potentially more fruitful sociological turn, one with significant benefits for IR as a whole
    corecore