Search-Based Test Data Generation for JavaScript Functions that Interact with the DOM

The popularity of JavaScript (JS) is enormous. Together with HTML and CSS, it is the core technology for modern web development. Because of the dynamic nature and complex interplay with HTML, JS applications are often error-prone and vulnerable. Despite active research efforts to devise intricate st...

Full description

Saved in:
Bibliographic Details
Published in:2018 IEEE 29th International Symposium on Software Reliability Engineering (ISSRE) pp. 88 - 99
Main Authors: Elyasov, Alexander, Prasetya, I.S.W.B., Hage, Jurriaan
Format: Conference Proceeding
Language:English
Published: IEEE 01.10.2018
Subjects:
ISSN:2332-6549
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Abstract The popularity of JavaScript (JS) is enormous. Together with HTML and CSS, it is the core technology for modern web development. Because of the dynamic nature and complex interplay with HTML, JS applications are often error-prone and vulnerable. Despite active research efforts to devise intricate static and dynamic analyses to facilitate JS testing, the problem of test data generation for JS code interacting with the DOM has not yet been addressed. In this paper, we present a Javascript Evolutionary testing framework with DOM as an Input, called JEDI. In order to reach a target branch, it applies genetic search for relevant input parameters of the JS function in combination with the global DOM state. We conducted an empirical evaluation to study the effectiveness and efficiency of our testing framework. It shows that the genetic with restart algorithm, proposed in this paper, is able to achieve complete branch coverage for all experimental subjects, taking on average 19 seconds per branch.
AbstractList The popularity of JavaScript (JS) is enormous. Together with HTML and CSS, it is the core technology for modern web development. Because of the dynamic nature and complex interplay with HTML, JS applications are often error-prone and vulnerable. Despite active research efforts to devise intricate static and dynamic analyses to facilitate JS testing, the problem of test data generation for JS code interacting with the DOM has not yet been addressed. In this paper, we present a Javascript Evolutionary testing framework with DOM as an Input, called JEDI. In order to reach a target branch, it applies genetic search for relevant input parameters of the JS function in combination with the global DOM state. We conducted an empirical evaluation to study the effectiveness and efficiency of our testing framework. It shows that the genetic with restart algorithm, proposed in this paper, is able to achieve complete branch coverage for all experimental subjects, taking on average 19 seconds per branch.
Author Hage, Jurriaan
Elyasov, Alexander
Prasetya, I.S.W.B.
Author_xml – sequence: 1
  givenname: Alexander
  surname: Elyasov
  fullname: Elyasov, Alexander
– sequence: 2
  givenname: I.S.W.B.
  surname: Prasetya
  fullname: Prasetya, I.S.W.B.
– sequence: 3
  givenname: Jurriaan
  surname: Hage
  fullname: Hage, Jurriaan
BookMark eNotjE1LAzEUAKMoaGvvgpf8ga3vJZts9qj9slIpuO25vCYvdEW3ZTcq_ntb9DQwDNMTF82-YSFuEYaIUN7Pq-p1MlSAbggACs5ED4121mmFcC6uldYqsyYvr8Sg695OjXWmALgW64qp9bvskToOcsVdkmNKJGfccEup3jcy7lv5TF9U-bY-JDn9bPzJdzLtKMl5k46hT_K7TrujYjlevtyIy0jvHQ_-2Rfr6WQ1esoWy9l89LDIaixMylTwPqhS5QiGnI-kA3JONrpQ6O2WMWARtM2jDd6gsVt2KoJDo0rMSxV1X9z9fWtm3hza-oPan40zuoRC6V9881Hs
CODEN IEEPAD
ContentType Conference Proceeding
DBID 6IE
6IL
CBEJK
RIE
RIL
DOI 10.1109/ISSRE.2018.00020
DatabaseName IEEE Electronic Library (IEL) Conference Proceedings
IEEE Proceedings Order Plan All Online (POP All Online) 1998-present by volume
IEEE Xplore All Conference Proceedings
IEEE Electronic Library (IEL)
IEEE Proceedings Order Plans (POP All) 1998-Present
DatabaseTitleList
Database_xml – sequence: 1
  dbid: RIE
  name: IEEE Electronic Library (IEL)
  url: https://ieeexplore.ieee.org/
  sourceTypes: Publisher
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISBN 1538683210
9781538683217
EISSN 2332-6549
EndPage 99
ExternalDocumentID 8539072
Genre orig-research
GroupedDBID 23M
29G
29N
29O
6IE
6IF
6IH
6IK
6IL
6IN
AAJGR
AAWTH
ABLEC
ACGFS
ADZIZ
ALMA_UNASSIGNED_HOLDINGS
BEFXN
BFFAM
BGNUA
BKEBE
BPEOZ
CBEJK
CHZPO
IEGSK
IPLJI
M43
OCL
RIE
RIL
RNS
ID FETCH-LOGICAL-i175t-2dccd2924105a8cfa3d1e4a6f8d73bbe1d17d364f6dc5156be82f0815291492f3
IEDL.DBID RIE
ISICitedReferencesCount 4
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000467991300009&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
IngestDate Wed Aug 27 02:53:14 EDT 2025
IsPeerReviewed false
IsScholarly true
Language English
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-i175t-2dccd2924105a8cfa3d1e4a6f8d73bbe1d17d364f6dc5156be82f0815291492f3
PageCount 12
ParticipantIDs ieee_primary_8539072
PublicationCentury 2000
PublicationDate 2018-Oct
PublicationDateYYYYMMDD 2018-10-01
PublicationDate_xml – month: 10
  year: 2018
  text: 2018-Oct
PublicationDecade 2010
PublicationTitle 2018 IEEE 29th International Symposium on Software Reliability Engineering (ISSRE)
PublicationTitleAbbrev ISSRE
PublicationYear 2018
Publisher IEEE
Publisher_xml – name: IEEE
SSID ssj0002685700
ssj0020412
Score 2.0909262
Snippet The popularity of JavaScript (JS) is enormous. Together with HTML and CSS, it is the core technology for modern web development. Because of the dynamic nature...
SourceID ieee
SourceType Publisher
StartPage 88
SubjectTerms branch coverage
DOM
Games
genetic algorithms
Genetics
JavaScript
Reactive power
search-based testing
Servers
Sociology
Test pattern generators
Title Search-Based Test Data Generation for JavaScript Functions that Interact with the DOM
URI https://ieeexplore.ieee.org/document/8539072
WOSCitedRecordID wos000467991300009&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1LTwIxEG6QePCECsZ3evBoZbe72-5eFYiaiEQg4Ub6mEYvYHDh9zvtwurBi7emp6bTznzz_Ai5iWTBfYKP8TTLGP7EgmkoIhZZT5oWCZVlLpBNyOEwn82KUYPc1r0wABCKz-DOL0Mu3y7N2ofKumha0JdDhbsnpax6tep4ChdhVHvtbPk5Uru0ZFR0n8bjt76v5PKlk5Fn9_5FphJsyaD1v1Mcks5PUx4d1ebmiDRgcUxaO1YGuv2kbTKtKojZPdonSyeo9WlPlYpWA6a9HCgCVfqsNmocVAYdoG0Lz4-W76qkIUioTEl9jBa3gPZeXzpkOuhPHh7ZljyBfSAiKBm3xliO3hUCKJUbpxIbQ6qEy61MtIbYxtImInXCGsQ0QkPOHeKDjBfoNHGXnJDmYrmAU0IlxIAoTKcuh9Qi5NORRtRYZFroHAQ_I21_S_PPaj7GfHtB539vX5ADL4aqIO6SNMvVGq7IvtmUH1-r6yDUb_FloF0
linkProvider IEEE
linkToHtml http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1LTwIxEG6ImugJFYxve_BoZbe72929KhBQQCKQcCN9zEYuYHDh9zvtwurBi7emp6bTznzz_Ai59-KU2wQf42EUMfyJKVOQeswzljTNEzKKMkc2EQ8GyXSaDivkoeyFAQBXfAaPduly-Wap1zZU1kDTgr4cKtz9KAy5X3RrlREVLtyw9tLdspOkdolJL210R6P3lq3lssWTnuX3_kWn4qxJu_q_cxyT-k9bHh2WBueEVGBxSqo7Xga6_aY1MilqiNkTWihDx6j3aVPmkhYjpq0kKEJV-iI3cuSUBm2jdXMPkOYfMqcuTCh1Tm2UFreANt_6dTJpt8bPHbalT2BzxAQ540Zrw9G_QgglE53JwPgQSpElJg6UAt_4sQlEmAmjEdUIBQnPECFEPEW3iWfBGdlbLBdwTmgMPiAOU2GWQGgQ9ClPIW5MIyVUAoJfkJq9pdlnMSFjtr2gy7-378hhZ9zvzXrdwesVObIiKcrjrslevlrDDTnQm3z-tbp1Av4GeF2jpA
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=proceeding&rft.title=2018+IEEE+29th+International+Symposium+on+Software+Reliability+Engineering+%28ISSRE%29&rft.atitle=Search-Based+Test+Data+Generation+for+JavaScript+Functions+that+Interact+with+the+DOM&rft.au=Elyasov%2C+Alexander&rft.au=Prasetya%2C+I.S.W.B.&rft.au=Hage%2C+Jurriaan&rft.date=2018-10-01&rft.pub=IEEE&rft.eissn=2332-6549&rft.spage=88&rft.epage=99&rft_id=info:doi/10.1109%2FISSRE.2018.00020&rft.externalDocID=8539072