11 papers · ranked by Valyu relevance
Matthias Güdemann, Peter Schrammel
Automated test case generation tools help businesses to write tests and increase the safety net provided by high regression test coverage when making code changes. Test generation needs to cover as much as possible of the uncovered code while avoiding generating redundant tests for code that is already covered by an…
Matúš Sulír, Jaroslav Porubän, Sergej Chodarev
Context: Downloading the source code of open-source Java projects and building them on a local computer using Maven, Gradle, orAnt is a common activity performed by researchers and practitioners. Multiple studies so far found that about 40–60% of such attempts fail. Our experience from the last years suggests that the…
Jean-Baptiste Döderlein, Riemer van Rozen, Tijs van der Storm
Context In the first part of his 2012 presentation "Inventing on Principle" [31], Bret Victor gives a demo of a live code editor for Javascript which shows the dynamic history of values of variables in real time. This form of live programming has become known as "probes" [3, 15, 18]. Probes provide the programmer with…
Chukri Soueidi, Marius Monnier, Ylìès Falcone
We present an efficient and expressive tool for the instrumentation of Java programs at the bytecodelevel. BISM (Bytecode-Level Instrumentation for Software Monitoring) is a lightweight Java bytecode instrumentation tool that features an expressive high-level control-flow-aware instrumentation language. The language is…
Romain Brenguier, Lucas C. Cordeiro, Daniel Kroening, Peter Schrammel
'Peter Schrammel'] Abstract. JBMC is an open-source SAT- and SMT-based bounded model checking tool for verifying Java bytecode. JBMC relies on an operational model of the Java libraries, which conservatively approximates their semantics, to verify assertion violations, array out-of-bounds, unintended arithmetic…
Jordan Samhi, Jun Gao, Nadia Daoudi, P Graux + 5 more
'Xiaoyu Sun' 'Kevin Allix' 'Tegawendé F. Bissyandé' 'Jacques Klein'] Native code is now commonplace within Android app packages where it co-exists and interacts with Dex bytecode through the Java Native Interface to deliver rich app functionalities. Yet, state-of-theart static analysis approaches have mostly overlooked…
Jialun Cao, Zhiyong Chen, Jia‐Rong Wu, Shing-Chi Cheung + 1 more
Large Language Models on JavaBench Authors: ['Jialun Cao' 'Zhiyong Chen' 'Jia‐Rong Wu' 'Shing-Chi Cheung' 'Chang Xu'] Code generation benchmarks such as HumanEval are widely adopted to evaluate LLMs' capabilities. However, after consolidating the latest 24 benchmarks, we noticed three significant imbalances. First…
Jiwei Yan, Jinhao Huang, Hengqin Yang, Jun Yan
为实现异常信息敏感的 API 生命周期模型构造,本文采用面向 Java 字节码的静态分析方法,首先提取框架 API 中的异 常抛出行为,生成异常摘要信息,然后通过多轮流式匹配策略获取异常信息的变更情况,构造异常信息敏感的 API 生命周期 模型。该方法:1)通过控制依赖语句切片提取异常抛出语句的关键触发条件,采用参数推断策略将局部变量的约束条件转 换为仅与外部输入参数相关的异常前断言,并基于自底向上的摘要传递实现跨过程异常摘要提取;2)通过关键信息精准匹 配和自适应模糊匹配策略,分析异常摘要信息的新增、删除和修改情况,最终得到异常敏感的 API 生命周期模型,共包含七 种 API 变更形式。基于该方法,实现了基于 Java…
Aman Sharma, Martin Wittlinger, Benoît Baudry, Martin Monperrus
Materials in Java Authors: ['Aman Sharma' 'Martin Wittlinger' 'Benoît Baudry' 'Martin Monperrus'] Abstract—Software supply chain attacks have become a significant threat as software development increasingly relies on contributions from multiple, often unverified sources. The code from unverified sources does not pose a…
Bolun Li, Pengfei Su, Milind Chabbi, Shuyin Jiao + 1 more
Java is the "go-to" programming language choice for developing scalable enterprise cloud applications. In such systems, even a few percent CPU time savings can offer a significant competitive advantage and cost saving. Although performance tools abound in Java, those that focus on the data locality in the memory…
Miles Frantz
The increasing development speed via Agile[1] may introduce overlooked security steps in the process, with an example being the Iowa Caucus application[2]. Verifying the protection of confidential information such as social security numbers requires security at all levels, providing protection through any connected…