Font Size: a A A

Empirical Research On The Defects Of JavaScript Engine

Posted on:2022-01-13Degree:MasterType:Thesis
Country:ChinaCandidate:S Y GouFull Text:PDF
GTID:2518306557467594Subject:Software engineering
Abstract/Summary:PDF Full Text Request
Java Script is one of the most important programming languages in web front-end development,and has long been at the forefront of the programming language rankings published by TIOBE.As an interpreted language,Java Script code is parsed and executed by a Java Script engine embedded in a web browser.There are many Java Script engines,among which V8,Spider Monkey and Chakra are the most widely used,and the combined market share of the three is as high as 84%.A correctly implemented Java Script engine is a necessary prerequisite for the correct operation of Java Script,but like other software,there are bound to be various discovered and undiscovered defects in the Java Script engine.These shortcomings will cause confusion to the users of the Java Script language and hinder the construction of Web projects.Based on the defect tracking systems of the three mainstream Java Script engines of V8,Spider Monkey and Chakra,this paper conducts empirical research on the defects in the Java Script engine.The research content includes the distribution of Java Script engine defects in time and space,and the test cases used to detect defects.The characteristics of the defect,the scope of code involved in defect repair,the correlation between defect priority and the component where the defect is located,and the duration of defect repair,and the root cause of the defect.Through the above research,it can help Java Script engine developers,testing and maintenance personnel to develop and maintain the Java Script engine more efficiently,and help Java Script language users avoid some common defects.The specific work of this paper is as follows:1.Based on the general information in the defect reports of the three mainstream Java Script engines,we study the basic situation of the defect reports that have been reopened and the defect reports that have been repeatedly submitted.The study found that the number of reopened reports and reopened reports in the defect report is relatively small,which will not bring redundant workload to Java Script engine developers and maintainers,and will not affect the effectiveness of our subsequent experimental analysis results.2.Based on the information related to defect triggering in the defect report,we study the test cases that trigger the defect.The research found that only a few reports in the Java Script engine defect report provide test cases.The analysis results show that although the code size of this part of the test cases is small,the defects can still be detected well.Therefore,when designing test cases,you should focus on small-scale but complex test cases instead of large-scale but simple test cases,so as to efficiently find and verify Java Script engine defects.3.Based on the defect repair information in the Java Script engine,we study the process of repairing defects.By analyzing the number of code modification lines,the number of file modifications,and the repair time,our research found that the number of code lines and file changes involved in most defect repairs are relatively small,and the repair time of most defects is relatively small.It's also relatively short.4.Based on the priority information in the defect report,we study the distribution of defect priority in different components and the correlation between defect priority and defect repair time.The study found that the high-priority defects accounted for the highest proportion of the Parser component in the V8 system,and the General component in the Spider Monkey system.This is consistent with the importance of this component in the system.Although intuitively high-priority defects should be repaired as soon as possible,there is no correlation between defect priority and defect repair time.The reason may be that high-priority defects are more difficult to repair,and may often take longer.Time to confirm the defect may also be due to insufficient human resources in the repair team.5.Based on the root cause analysis of the defect report,we research the root cause and distribution of defects in the Java Script engine.Research has found that most of the defects in the three Java Script engines are semantic errors,and there are relatively few defects similar to platforms and performance.
Keywords/Search Tags:Empirical research, JavaScript Engine, Software defect, V8, SpiderMonkey, Chakra
PDF Full Text Request
Related items