Software Testing Background

本文探讨了软件错误的历史案例,定义了软件缺陷,并分析了缺陷产生的原因及成本。此外,还讨论了如何成为一名优秀的软件测试人员。

Software Testing Background
Chapter 1
2

In this chapter
 Infamous software error case studies
 What is a bug?
 Why do bugs occurs?
 The cost of bugs
 What makes a good software tester?
3

Story of Bug
 Mark II, Harvard University, 1947
 Behemoth stopped working
 A moth stuck between a set of relay contacts
 Computer BUG was born
4

Infamous software error case studies
 Disney Lion King, 1944-1945
 Intel Pentium floating-point division bug, 1994
 NASA Mars Polar Lander, 1999
 Patriot Missile Defense System, 1991
 The Y2K (Year 2000) Bug, circa 1974
 Dangerous Viewing Ahead, 2004
5

What is a Bug
 Software failure
 The software didn’t operate as intended
 Terms for Software Failure
 Defect, Variance, Fault, Failure, Problem,
Inconsistency, Error, Feature, Incident, Bug,
Anomaly
 Why should we know these terms?
6

Software Bug: A Formal Definition
 Product specification
 Software bug occurs when:
 The software doesn’t do something that the
spec says it should do
 The software does something that the spec
says it shouldn’t do
 The software does something that the spec
doesn’t mention
 The software is difficult to understand, hard to
use, slow
7

Why do Bugs Occur
 Most of the bugs aren’t caused by
programming errors
 Number one: Specification
 Number two: Design
 Number three: Coding error
 Number four: Others
8

The Cost of Bugs
 The cost are logarithmic
$1
$10
$100
$1000+
specification design code release
9

What Exactly Does a Software Tester Do?
 The goal of software tester is to find bugs
 The goal of software tester is to find bugs and
find them as early as possible
The goal of a software tester
is to find bugs,
find them as
early as possible
,
and make
sure they get fixed
 Fixing a bug does not necessarily imply
correcting the software
10

What Makes a Good Software Tester?
 Question: Is tester’s job easier than a programmer’s?
 “As a matter of cosmic history, it has always been easier to destroy
than to create.”
 List of traits for software testers:
 They are explorers
 They are troubleshooters
 They are relentless
 They creative
 They are perfectionists
 They exercise good judgment
 They are tactful and diplomatic
 They are persuasive
 A fundamental trait of software testers is
they simply like to break things. 

Li Zhang, Wei-Tek Tsai, Adaptive attention fusion network for cross-device GUI element re-identification in crowdsourced testing, Neurocomputing, Volume 580, 2024, 127502, ISSN 0925-2312, https://doi.org/10.1016/j.neucom.2024.127502. (https://www.sciencedirect.com/science/article/pii/S092523122400273X) Abstract: The rapid growth of mobile devices has ushered in an era of different device platforms. Different devices require a consistent user experience, especially with similar graphical user interfaces (GUIs). However, the different code bases of the various operating systems as well as the different GUI layouts and resolutions of the various devices pose a challenge for automated software testing. Crowdsourced software testing (CST) has emerged as a viable solution where crowdsourced workers perform tests on their own devices and provide detailed bug reports. Although CST is cost-effective, it is not very efficient and requires a large number of workers for manual testing. The potential of optimizing CST reproduction testing through computer vision remains largely untapped, especially when considering the uniformity of GUI elements on different devices. In this study, we present a novel deep learning model specifically designed to re-identify GUI elements in CST reproduction test scenarios, regardless of the underlying code changes on different devices. The model features a robust backbone network for feature extraction, an innovative attention mechanism with learnable factors to enhance the features of GUI elements and minimize interference from their backgrounds, and a classifier to determine matching labels for these elements. Our approach was validated on a large GUI element dataset containing 31,098 element images for training, 115,704 element images from real apps for testing, and 67 different background images. The results of our experiments underline the excellent accuracy of the model and the importance of each component. This work is a major step forward in improving the efficiency of reproduction testing in CST. The innovative solutions we propose could further reduce labor costs for CST platforms. Keywords: Crowdtesting; Computer vision; Convolutional neural network; GUI element re-identification; Adaptive attention mechanism; Cross-device testing
03-22
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值