Testing and Automation

Correlation analysis in automated testing

UB2.147
Łukasz Wcisło
Correlation Analysis is a statistical method that is used to discover if there is a relationship between two variables, and how strong that relationship might be. A correlation coefficient is a numerical measure of such correlation. According to the Cauchy–Schwarz inequality it has a value between 1 and −1, where 1 is total positive linear correlation, 0 is no linear correlation, and −1 is total negative linear correlation. One of the axioms of automated testing is that tests are independent and in spite of that correlation coefficient should be equal to 0. But often it isn't. In this work, we are going to present a method of evaluation of tests suites quality based on correlation coefficient and finding their weak points. Using PC Engines open-source firmware regression test results, which are based on over 140 automated tests run with 2 flavors of software on 4 different platforms, we will show how its quality can be described numerically, and how that results can be used to optimize test criteria.
As far as automated testing is considered all the tests can have only two expected output values - pass or fail. Originally Pearson's correlation coefficient is the covariance of the two variables divided by the product of their standard deviations - the first question was how to do it for Boolean variables. We assumed that the only value that matters can be a failure of a test. During the lecture, we will present how mathematical analysis can reveal potential flaws in test criteria by targeting cases that have a large chance to fail simultaneously.

Additional information

Type devroom

More sessions

2/1/20
Testing and Automation
Alexandros Frantzis
UB2.147
In this talk we will explore some of the FOSS specific mentalities and practices that may discourage adoption of comprehensive automated testing, and present advice for promoting and sustaining automated testing in FOSS projects.
2/1/20
Testing and Automation
Guillaume Tucker
UB2.147
KernelCI is a project dedicated to testing the upstream Linux kernel. Originally created by Linaro in 2014, it started a new chapter by becoming a Linux Foundation project in October 2019. Its future looks bright, with plenty of opportunities for new contributors to join.
2/1/20
Testing and Automation
Nikolai Kondrashov
UB2.147
See how Red Hat’s CKI project uses GitLab CI to test kernel patches as soon as they're posted to maillists.
2/1/20
Testing and Automation
Richard Palethorpe
UB2.147
Overview of SUSE's Linux kernel testing in OpenQA, how we keep track of known issues, explore test results and other features of JDP. The JDP framework is written in Julia, uses Redis as a distributed data cache and Jupyter for interactive reporting. OpenQA is a large application used for testing operating systems and displaying the results.
2/1/20
Testing and Automation
Dario Faggioli
UB2.147
What benchmark? How many VMs? How big each VM is? Are they all equal or are they different? What's the host OS? What are the guest OSes? I.e., when wanting to do virtualization performance testing, the matrix of test cases tends to explode pretty quickly. This talk will show how we enhanced an existing benchmarking suite, MMTests, in order to be able to deal a little bit better with such complexity. And what our further activities and plans are, for even more and better automation.
2/1/20
Testing and Automation
Rajat Singh
UB2.147
OCS stands for Openshift Container storage. It provides container-based storage for OCP(Openshift container platform). It’s easily scalable to bare metal, VMs and cloud platforms. Auto healing is a property of OCS cluster that auto heals a cluster component automatically when passes through an unexpected condition. A component can be a node, a network interface, a service, etc. To make sure auto heals just fine, we introduced negative testing. Negative Testing is defined as, a testing type ...
2/1/20
Testing and Automation
Rolf Madsen
UB2.147
OpenTAP is a project aimed at automation in the test and measurement space. It is designed for test and measurement of hardware in R&D and manufacturing, but is moving more towards software testing e.g. with usage in cloud infrastructure testing. The project started as an internal product by Keysight Technologies and is used as the core of many products and solutions deployed around the world. As of 2019, we have released OpenTAP under the Mozilla Public License v2 and are working on building a ...