77 research outputs found

    Mimicking Production Behavior with Generated Mocks

    Full text link
    Mocking in the context of automated software tests allows testing program units in isolation. Designing realistic interactions between a unit and its environment, and understanding the expected impact of these interactions on the behavior of the unit, are two key challenges that software testers face when developing tests with mocks. In this paper, we propose to monitor an application in production to generate tests that mimic realistic execution scenarios through mocks. Our approach operates in three phases. First, we instrument a set of target methods for which we want to generate tests, as well as the methods that they invoke, which we refer to mockable method calls. Second, in production, we collect data about the context in which target methods are invoked, as well as the parameters and the returned value for each mockable method call. Third, offline, we analyze the production data to generate test cases with realistic inputs and mock interactions. The approach is automated and implemented in an open-source tool called RICK. We evaluate our approach with three real-world, open-source Java applications. RICK monitors the invocation of 128 methods in production across the three applications and captures their behavior. Next, RICK analyzes the production observations in order to generate test cases that include rich initial states and test inputs, mocks and stubs that recreate actual interactions between the method and its environment, as well as mock-based oracles. All the test cases are executable, and 52.4% of them successfully mimic the complete execution context of the target methods observed in production. We interview 5 developers from the industry who confirm the relevance of using production observations to design mocks and stubs

    Culture, Habitat and Ethno-Medicinal practices by Bhotia Tribe people of Dharchula Region of Pithoragarh District in Kumaun Himalaya, Uttarakhand

    Get PDF
    A survey in different areas of Dharchula region in Pithoragarh district of Uttarakhand was conducted in different seasons of the year to identify the non-conventional uses of plants. In India, there are about 68 million people belonging to 227 ethnic groups and comprising of 573 tribal communities. Out of which 4 tribes (Tharus, Buxas, Rajis and Bhotias) inhabit the Kumaun division of the state. The Bhotia tribe living in remote thick forest of the Dharchula region depends on nature for their basic needs of life. The 8 major Bhotia groups in the state are i.e. Johari, Juthora, Darmi, Chudans, Byansi, Marccha, Tolcha and Jad. The tribal population of Bhotia community is 8.13 % and inhabited in about 18.70 % of area of the country. The present study was carried out to document the precious indigenous traditional knowledge about the ethno-medicinal uses and properties of plants which are under Red Data List of IUCN. Ethno-medicinal information on 17 plant species belonging 15 families, used in various ailments by the inhabitants of the community was recorded. The attempt is also made to describe the habitat, customs and economical aspects of Bhotia tribes

    With Great Humor Comes Great Developer Engagement

    Full text link
    The worldwide collaborative effort for the creation of software is technically and socially demanding. The more engaged developers are, the more value they impart to the software they create. Engaged developers, such as Margaret Hamilton programming Apollo 11, can succeed in tackling the most difficult engineering tasks. In this paper, we dive deep into an original vector of engagement - humor - and study how it fuels developer engagement. First, we collect qualitative and quantitative data about the humorous elements present within three significant, real-world software projects: faker, which helps developers introduce humor within their tests; lolcommits, which captures a photograph after each contribution made by a developer; and volkswagen, an exercise in satire, which accidentally led to the invention of an impactful software tool. Second, through a developer survey, we receive unique insights from 125 developers, who share their real-life experiences with humor in software. Our analysis of the three case studies highlights the prevalence of humor in software, and unveils the worldwide community of developers who are enthusiastic about both software and humor. We also learn about the caveats of humor in software through the valuable insights shared by our survey respondents. We report clear evidence that, when practiced responsibly, humor increases developer engagement and supports them in addressing hard engineering and cognitive tasks. The most actionable highlight of our work is that software tests and documentation are the best locations in code to practice humor

    Automatic Specialization of Third-Party Java Dependencies

    Full text link
    Modern software systems rely on a multitude of third-party dependencies. This large-scale code reuse reduces development costs and time, and it poses new challenges with respect to maintenance and security. Techniques such as tree shaking or shading can remove dependencies that are completely unused by a project, which partly address these challenges. Yet, the remaining dependencies are likely to be used only partially, leaving room for further reduction of third-party code. In this paper, we propose a novel technique to specialize dependencies of Java projects, based on their actual usage. For each dependency, we systematically identify the subset of its functionalities that is necessary to build the project, and remove the rest. Each specialized dependency is repackaged. Then, we generate specialized dependency trees where the original dependencies are replaced by the specialized versions and we rebuild the project. We implement our technique in a tool called DepTrim, which we evaluate with 30 notable open-source Java projects. DepTrim specializes a total of 343 (86.6%) dependencies across these projects, and successfully rebuilds each project with a specialized dependency tree. Moreover, through this specialization, DepTrim removes a total of 60,962 (47.0%) classes from the dependencies, reducing the ratio of dependency classes to project classes from 8.7x in the original projects to 4.4x after specialization. These results indicate the relevance of dependency specialization to significantly reduce the share of third-party code in Java projects.Comment: 17 pages, 2 figures, 4 tables, 1 algorithm, 2 code listings, 3 equation

    Antiviral medicinal plants of India as a potential tool against COVID-19: A review with ethno scientific evidence

    Get PDF
    Indian traditional medicinal systems are one of the oldest therapeutic systems in the world. Medicinal and aromatic plants play a dominant role in Indian traditional medicinal systems. Traditionally, many medicinal plants are used in India for their therapeutic relevance so much so that they have acquired a significant role in Indian religion as well. Many of these plants have proven antiviral effects. This review documents up-to-date information about many such medicinal herbs used in India which have got pharmacological significance in fighting viral infections. These plants surely have the potential to provide protection against Covid-19. The review presents a list of such plants along with their chemical ingredients and possible modes of action against the respective viral diseases. All information has been obtained by consulting the databases of Scopus, PubMed, Science Direct, Elsevier, Springer and relevant research papers and reports on COVID-19. The cited medicinal plants are used extensively in India as herbal remedies. The use of these plants is validated in light of research papers citing their ethnobotanical uses, important active principles and modes of action of the of medicinally important natural products. The plants listed have great potential to fight COVID-19 and other viral infections. Many of these are immunity boosters providing strength to the body to control the onset of diseases

    Journal of Academic Librarianship: A Bibliometric Analysis

    Get PDF
    This bibliometric study is focused on the findings of ‘Journal of Academic Librarianship’ (JAL) during the period 2007-2016. Web of Science Citation database is used and 656 articles retrieved are analyzed on diverse parameters i.e. chronological distribution of articles, length of articles, authorship and citation pattern etc. More than half of the articles are published under joint authorship and average degree of collaboration is 0.56. A very large majority of articles (89.85 percent) is published by USA and top 14 countries published 94.36 percent articles in JAL from 2007-16. The most prolific authors are K. Coyle and G. Little with 9 articles each and highest contributed institutions are California State University System and University of Illinois System with 21 and 16 articles respectively. The average citation per paper is 4.35 and 8 papers received 31 and above citation
    • …
    corecore