Weekly Talk

Learning-based Widget Matching for Migrating GUI Test Cases

GUI test case migration is to migrate GUI test cases from a source app to a target app. The key of test case migration is widget match- ing. Recently, researchers have proposed various approaches by formulating widget matching as a matching task. …

Testing Graph Database via Graph-Aware Metamorphic Relations

Graph database systems (GDBs) have supported many important real-world applications such as social networks, logistics, and path planning. Meanwhile, logic bugs are also prevalent in GDBs, leading to incorrect results and severe consequences. …

Introduction to code commit process

In collaborative software development, different developers work independently for respective tasks, which increases the development productivity. However, this process sometimes exhibits inefficiencies. Each time a programmer submits code changes, …

Golly! Granular Bug Finding via Polyhedral Analysis of GPU Kernels

In this era of multicore programming, industry engineers and scientists alike have turned to parallel algorithms to improve algorithmic performance at scale, resulting in a demand for massively parallel processors that manufacturers have been only …

Equivalent Query Rewriting in Graph Database without Hard-code Rules

Graph Database Management Systems (GDBMS), which utilize graph models for data storage and execute queries via graph traversals, have seen ubiquitous usage in real-world scenarios such as recommendation systems, knowledge graphs, and social networks. …

Mozi: Discovering DBMS Bugs via Configuration-Based Equivalent Transformation

Testing database management systems (DBMSs) is a complex task. The vagueness and intricacy of the SQL specification make it difficult to model the semantics of queries, making it challenging to test the correctness and performance of DBMSs. …

Testing Change Data Capture Tools via SQLancer-CDC

Change Data Capture (CDC) tools play a pivotal role in tracking and managing alterations to databases. Most of them become crucial components in the realm of data management,providing a systematic approach to identify and capture changes made to …

GrayC: Greybox Fuzzing of Compilers and Analysers for C

Fuzzing of compilers and code analysers has led to a large number of bugs being found and fixed in widely-used frameworks such as LLVM, GCC and Frama-C. Most such fuzzing techniques have taken a blackbox approach, with compilers and code analysers …

Software Build Maintenance​: Errors and Efficiency

Complete and correct build dependencies are critical to successful builds and are often violated and ignored by practitioners using MAKE, one of the widely used build systems. Incomplete declarations of build dependencies can lead to incorrect or …

Runtime Compiler Optimizations for CPython Bytecode