Generating error-revealing inputs with new static analysis warnings새로운 정적 분석 경고를 통한 오류 입력 값 생성

Cited 0 time in webofscience Cited 0 time in scopus
  • Hit : 359
  • Download : 0
DC FieldValueLanguage
dc.contributor.advisorKim, Sunghun-
dc.contributor.advisor김성훈-
dc.contributor.advisorRyu, Suk Young-
dc.contributor.advisor류석영-
dc.contributor.authorCheung, Wai Ting-
dc.date.accessioned2019-08-25T02:47:39Z-
dc.date.available2019-08-25T02:47:39Z-
dc.date.issued2018-
dc.identifier.urihttp://library.kaist.ac.kr/search/detail/view.do?bibCtrlNo=828225&flag=dissertationen_US
dc.identifier.urihttp://hdl.handle.net/10203/265322-
dc.description학위논문(박사) - 전산학부, 2018.8,[x, 78 p. :]-
dc.description.abstractJavaScript is the most used programming language for the last few years. Many JavaScript libraries are widely used in practice. However, existing research is not yet ready for analyzing JavaScript libraries. Pattern-based static analyzers use pattern matching to identify known buggy patterns. Yet, it can hardly identify bugs that require semantics-based analysis. Applying existing semantics-based static analyzers on JavaScript libraries faces several challenges: functions not reachable during analysis, creating objects of dynamic types, identifying new warnings for untested execution paths, and insufficient debugging aids. To address these limitations, this thesis proposes TSA, a test-based approach that combines static and dynamic analysis. It leverages existing test cases to call and reach the library functions during static analysis. The approach extends existing test cases to identify new warnings for untested execution paths. It also reveals real errors that serve as debugging aids. This thesis applied TSA to analyze 32 popular client-side JavaScript libraries from GitHub. TSA identified 22–27% of new warnings for untested execution paths. It also verified the warnings of 47% of the subjects. A total of 3723 extended test cases revealed 33 unique TypeError. Among the 33 TypeError, existing tools can detect at most 24% of them. Developers confirmed six of the detected TypeError as real bugs. The proposed approach acts as a milestone that drives the JavaScript community to expand their scope of research by analyzing a large variety of JavaScript libraries in their work.-
dc.languageeng-
dc.publisher한국과학기술원-
dc.subjectJavaScript▼aStatic Analysis▼aDynamic Analysis▼aTesting▼aDebugging-
dc.subject자바스크립트▼a정적 분석▼a동적 분석▼a테스팅▼a디버깅-
dc.titleGenerating error-revealing inputs with new static analysis warnings-
dc.title.alternative새로운 정적 분석 경고를 통한 오류 입력 값 생성-
dc.typeThesis(Ph.D)-
dc.identifier.CNRN325007-
dc.description.department전산학부,-
dc.contributor.alternativeauthor[쳉, 웨이 팅]-
Appears in Collection
CS-Theses_Ph.D.(박사논문)
Files in This Item
There are no files associated with this item.

qr_code

  • mendeley

    citeulike


rss_1.0 rss_2.0 atom_1.0