Toward harnessing a Java high-level language virtual machine for supporting software testing
Autor(a) principal: | |
---|---|
Data de Publicação: | 2013 |
Tipo de documento: | Tese |
Idioma: | eng |
Título da fonte: | Biblioteca Digital de Teses e Dissertações da USP |
Texto Completo: | http://www.teses.usp.br/teses/disponiveis/55/55134/tde-06012014-150025/ |
Resumo: | High-level language virtual machines (HLL VMs) have been playing a key role as a mechanism for implementing programming languages. Languages that run on these execution environments have many advantages over languages that are compiled to native code. These advantages have led HLL VMs to gain broad acceptance in both academy and industry. However, much of the research in this area has been devoted to boosting the performance of these execution environments. Few eorts have attempted to introduce features that automate or facilitate some software engineering activities, including software testing. This research argues that HLL VMs provide a reasonable basis for building an integrated software testing environment. To this end, two software testing features that build on the characteristics of a Java virtual machine (JVM) were devised. The purpose of the rst feature is to automate weak mutation. Augmented with mutation support, the chosen JVM achieved speedups of as much as 95% in comparison to a strong mutation tool. To support the testing of concurrent programs, the second feature is concerned with enabling the deterministic re-execution of Java programs and exploration of new scheduling sequences |
id |
USP_e0edc6360258cc474d5807fb407a98a1 |
---|---|
oai_identifier_str |
oai:teses.usp.br:tde-06012014-150025 |
network_acronym_str |
USP |
network_name_str |
Biblioteca Digital de Teses e Dissertações da USP |
repository_id_str |
2721 |
spelling |
Toward harnessing a Java high-level language virtual machine for supporting software testingUtilizando uma máquina virtual Java como apoio à atividade de teste de softwareJava virtual machineMáquina virtual JavaMaxine VMMaxine VMMecanismo de record-and-playbackMutação fracaMutation testingRecord-and-playback mechanismSoftware testingTeste de mutaçãoTeste de softwareWeak mutationHigh-level language virtual machines (HLL VMs) have been playing a key role as a mechanism for implementing programming languages. Languages that run on these execution environments have many advantages over languages that are compiled to native code. These advantages have led HLL VMs to gain broad acceptance in both academy and industry. However, much of the research in this area has been devoted to boosting the performance of these execution environments. Few eorts have attempted to introduce features that automate or facilitate some software engineering activities, including software testing. This research argues that HLL VMs provide a reasonable basis for building an integrated software testing environment. To this end, two software testing features that build on the characteristics of a Java virtual machine (JVM) were devised. The purpose of the rst feature is to automate weak mutation. Augmented with mutation support, the chosen JVM achieved speedups of as much as 95% in comparison to a strong mutation tool. To support the testing of concurrent programs, the second feature is concerned with enabling the deterministic re-execution of Java programs and exploration of new scheduling sequencesMáquinas virtuais de linguagens de programação têm desempenhado um papel importante como mecanismo para a implementação de linguagens de programação. Linguagens voltadas para esses ambientes de execução possuem várias vantagens em relação às linguagens compiladas. Essas vantagens fizeram com que tais ambientes de execução se tornassem amplamente utilizados pela indústria e academia. Entretanto, a maioria dos estudos nessa area têm se dedicado a aprimorar o desempenho desses ambientes de execução e poucos têm enfocado o desenvolvimento de funcionalidades que automatizem ou facilitem a condução de atividades de engenharia de software, incluindo atividades de teste de software. Este trabalho apresenta indícios de que máquinas virtuais de linguagens de programação podem apoiar a criação de ambientes de teste de software integrado. Para tal, duas funcionalidades que tiram proveito das características de uma máquina virtual Java foram desenvolvidas. O propósito da primeira funcionalidade e automatizar a condução de atividades de mutação fraca. Após a implementação de tal funcionalidade na máquina virtual Java selecionada, observou-se um desempenho até 95% melhor em relação a uma ferramenta de mutação forte. Afim de apoiar o teste de programas concorrentes, a segunda funcionalidade permite reexecutá-los de forma determinística além de automatizar a exploração de que novas sequências de escalonamentoBiblioteca Digitais de Teses e Dissertações da USPDelamaro, Márcio EduardoOffutt, JeffersonDurelli, Vinicius Humberto Serapilha2013-10-01info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisapplication/pdfhttp://www.teses.usp.br/teses/disponiveis/55/55134/tde-06012014-150025/reponame:Biblioteca Digital de Teses e Dissertações da USPinstname:Universidade de São Paulo (USP)instacron:USPLiberar o conteúdo para acesso público.info:eu-repo/semantics/openAccesseng2016-07-28T16:11:02Zoai:teses.usp.br:tde-06012014-150025Biblioteca Digital de Teses e Dissertaçõeshttp://www.teses.usp.br/PUBhttp://www.teses.usp.br/cgi-bin/mtd2br.plvirginia@if.usp.br|| atendimento@aguia.usp.br||virginia@if.usp.bropendoar:27212016-07-28T16:11:02Biblioteca Digital de Teses e Dissertações da USP - Universidade de São Paulo (USP)false |
dc.title.none.fl_str_mv |
Toward harnessing a Java high-level language virtual machine for supporting software testing Utilizando uma máquina virtual Java como apoio à atividade de teste de software |
title |
Toward harnessing a Java high-level language virtual machine for supporting software testing |
spellingShingle |
Toward harnessing a Java high-level language virtual machine for supporting software testing Durelli, Vinicius Humberto Serapilha Java virtual machine Máquina virtual Java Maxine VM Maxine VM Mecanismo de record-and-playback Mutação fraca Mutation testing Record-and-playback mechanism Software testing Teste de mutação Teste de software Weak mutation |
title_short |
Toward harnessing a Java high-level language virtual machine for supporting software testing |
title_full |
Toward harnessing a Java high-level language virtual machine for supporting software testing |
title_fullStr |
Toward harnessing a Java high-level language virtual machine for supporting software testing |
title_full_unstemmed |
Toward harnessing a Java high-level language virtual machine for supporting software testing |
title_sort |
Toward harnessing a Java high-level language virtual machine for supporting software testing |
author |
Durelli, Vinicius Humberto Serapilha |
author_facet |
Durelli, Vinicius Humberto Serapilha |
author_role |
author |
dc.contributor.none.fl_str_mv |
Delamaro, Márcio Eduardo Offutt, Jefferson |
dc.contributor.author.fl_str_mv |
Durelli, Vinicius Humberto Serapilha |
dc.subject.por.fl_str_mv |
Java virtual machine Máquina virtual Java Maxine VM Maxine VM Mecanismo de record-and-playback Mutação fraca Mutation testing Record-and-playback mechanism Software testing Teste de mutação Teste de software Weak mutation |
topic |
Java virtual machine Máquina virtual Java Maxine VM Maxine VM Mecanismo de record-and-playback Mutação fraca Mutation testing Record-and-playback mechanism Software testing Teste de mutação Teste de software Weak mutation |
description |
High-level language virtual machines (HLL VMs) have been playing a key role as a mechanism for implementing programming languages. Languages that run on these execution environments have many advantages over languages that are compiled to native code. These advantages have led HLL VMs to gain broad acceptance in both academy and industry. However, much of the research in this area has been devoted to boosting the performance of these execution environments. Few eorts have attempted to introduce features that automate or facilitate some software engineering activities, including software testing. This research argues that HLL VMs provide a reasonable basis for building an integrated software testing environment. To this end, two software testing features that build on the characteristics of a Java virtual machine (JVM) were devised. The purpose of the rst feature is to automate weak mutation. Augmented with mutation support, the chosen JVM achieved speedups of as much as 95% in comparison to a strong mutation tool. To support the testing of concurrent programs, the second feature is concerned with enabling the deterministic re-execution of Java programs and exploration of new scheduling sequences |
publishDate |
2013 |
dc.date.none.fl_str_mv |
2013-10-01 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/doctoralThesis |
format |
doctoralThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://www.teses.usp.br/teses/disponiveis/55/55134/tde-06012014-150025/ |
url |
http://www.teses.usp.br/teses/disponiveis/55/55134/tde-06012014-150025/ |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.relation.none.fl_str_mv |
|
dc.rights.driver.fl_str_mv |
Liberar o conteúdo para acesso público. info:eu-repo/semantics/openAccess |
rights_invalid_str_mv |
Liberar o conteúdo para acesso público. |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.coverage.none.fl_str_mv |
|
dc.publisher.none.fl_str_mv |
Biblioteca Digitais de Teses e Dissertações da USP |
publisher.none.fl_str_mv |
Biblioteca Digitais de Teses e Dissertações da USP |
dc.source.none.fl_str_mv |
reponame:Biblioteca Digital de Teses e Dissertações da USP instname:Universidade de São Paulo (USP) instacron:USP |
instname_str |
Universidade de São Paulo (USP) |
instacron_str |
USP |
institution |
USP |
reponame_str |
Biblioteca Digital de Teses e Dissertações da USP |
collection |
Biblioteca Digital de Teses e Dissertações da USP |
repository.name.fl_str_mv |
Biblioteca Digital de Teses e Dissertações da USP - Universidade de São Paulo (USP) |
repository.mail.fl_str_mv |
virginia@if.usp.br|| atendimento@aguia.usp.br||virginia@if.usp.br |
_version_ |
1815256754713264128 |