『Bug挖掘机 - 赠书02期』|〖Effective软件测试〗

大家好,我是洋子,前段时间给大家推荐了《测试设计思想》,今天再给大家推荐一本软件测试领域的新书

这本书就比较接地气了,是一本软件测试的入门书籍,但同样适用于1-3年软件测试经验的读者阅读

这本书第一章就用Java代码以及编写单元测试用例来展示程序当中的隐藏Bug,如果你熟悉Java语言,这本书将更加适合阅读

除了开发,作为测试人员,最好也能去看代码,重点关注代码异常处理,以及入参的列表当中存在的重复元素,边界值等,这些是实践留下来Bug最容易出现的地方

看代码能帮助我们定位到问题产生的根本原因,也能提高自己的代码阅读能力甚至是编程能力

书籍介绍

《Effective软件测试》 是一本由清华大学出版社出版的图书,作者是[荷]毛里西奥·阿尼什(Maurício Aniche),译者是朱少民、李洁、张元。是2023年6月新推出的一本书籍,也算是测试领域一本新书了

Maurício Aniche博士是荷兰代尔夫特理工大学软件工程系的助教,并兼任Adyen公司技术部总监。对这位作者的话,大家可能不是很熟悉 。再看下翻译里面的作者,提起朱少民,相信在软件测试领域呆久的同学或多或少还是有印象
请添加图片描述

书籍目录

第1章 有效和系统的软件测试
第2章 基于需求规格的测试
第3章 结构化测试与代码覆盖
第4章 契约式设计
第5章 基于属性的测试
第6章 测试替身和模拟对象
第7章 可测试性设计
第8章 测试驱动的开发
第9章 编写大型测试
第10章 测试代码的质量
第11章 全书总结

读书笔记

这本书整体来说比较接地气,对于刚入门软件测试的同学也没有障碍,语言通熟易懂,首先阅读此书可以巩固自己软件测试理论,比如软件测试什么时候可以停止、穷尽测试是否可行,测试金字塔模型(单元、集成、系统测试)

接着就是介绍当给你一个产品的需求后,从需求分析、分析边界挖掘出测试点、再到转化为测试用例的全过程,以及功能测试完成后,如何添加自动化case,全方面了解软件测试的全流程

书中还探讨了SBT(Script-based Testing),强调的是先做测试设计,然后在做测试

另外让洋子非常惊喜的是,书中谈到了结构化测试(白盒测试),对白盒测试代码覆盖标准(行、分支、条件+分支,路径覆盖)做了详细介绍,这在之前软件测试的书籍当中,几乎看不到

最后书籍当中也有一些测试领域的新概念和热点知识,如变异测试、契约设计、测试替身和模拟对象(Mock打桩)、可测性的设计、如何进行数据库SQL的自动化测试、Selenium自动化测试等

购书链接

购书传送门:京东网上商城

为感谢粉丝的长期支持,洋子将在朋友圈赠送3本《Effective软件测试》书籍,详情可关注朋友圈参与活动。没有好友的可以+V(testerguide)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/126186.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LinuxUbuntu安装OpenWAF

Linux&Ubuntu安装OpenWAF 官方GitHub地址 介绍 OpenWAF(Web Application Firewall)是一个开源的Web应用防火墙,用于保护Web应用程序免受各种网络攻击。它通过与Web服务器集成,监控和过滤对Web应用程序的流量,识…

优化VUE Element UI的上传插件

默认ElmentUI的文件列表只有一个删除按钮&#xff0c;我需要加预览、下载、编辑等&#xff0c;就需要优化显示结果。 优化后没用上传进度条&#xff0c;又加了一个进度条效果 代码 <template><div><el-uploadclass"upload-demo"action"/"…

09_瑞萨GUI(LVGL)移植实战教程之拓展练习

本系列教程配套出有视频教程&#xff0c;观看地址&#xff1a;https://www.bilibili.com/video/BV1gV4y1e7Sg 9. 拓展练习 本节安排三个实验检验学习成果&#xff0c;实验示例源码在资料包的这个位置&#xff1a; DShanMCU-RA6M5配套学习资料\2_配套源码\02_瑞萨电子MCU GUI(…

《Tree of Thoughts: Deliberate Problem Solving with Large Language Models》中文翻译

《Tree of Thoughts: Deliberate Problem Solving with Large Language Models》- 思维树&#xff1a;用大型语言模型有意识地解决问题 论文信息摘要1. 介绍2. 背景3. 思想树&#xff1a;用 LM 有意识地解决问题4. 实验4.1 24 人游戏4.2 创意写作4.3 迷你填字游戏 5. 相关工作6…

基于大规模测量和多任务深度学习的电子鼻系统目标识别、浓度预测和状态判断

Target discrimination, concentration prediction, and status judgment of electronic nose system based on large-scale measurement and multi-task deep learning 摘要 为了实现响应特征的自动提取&#xff0c;简化模型的训练和应用过程&#xff0c;设计了一种双块知识…

【数据结构--二叉树】平衡二叉树

题目描述&#xff1a; 代码实现&#xff1a; /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/ int TreeHeight(struct TreeNode* root) {if(rootNULL)return 0;//左右子树中大的…

Linux 中的 chpasswd 命令及示例

chpasswd命令用于更改密码,尽管passwd命令也可以执行相同的操作。但它一次更改一个用户的密码,因此对于多个用户,使用chpasswd 。下图显示了passwd命令的使用。使用passwd我们正在更改来宾用户的密码。首先,您必须输入当前签名用户的密码,然后更改任何其他用户的密码。必须…

Java认识异常(超级详细)

目录 异常的概念和体系结构 异常的概念 异常的体系结构 异常的分类 1.编译时异常 2.运行时异常 异常的处理 防御式编程 LBYL EAFP 异常的抛出 异常的捕获 异常声明throws try-catch捕获并处理 finally 异常的处理流程 异常的概念和体系结构 异常的概念 在Java中…

RabbtiMQ的安装与在Springboot中的使用!!!

一、安装Erlang与Rabbitmq 安装教程本教程是在centos8下试验的&#xff0c;其实linux系统的都差不多RabbitMQ官方&#xff1a;Messaging that just works — RabbitMQRabbitMQ是开源AMQP实现&#xff0c;服务器端用Erlang语言编写&#xff0c;Python、Ruby、 NET、Java、JMS、c…

二十、MySQL多表关系

1、概述 在项目开发中&#xff0c;在进行数据库表结构设计时&#xff0c;会根据业务需求以及业务模块之间的关系&#xff0c;分析并设计表结构&#xff0c;由于业务之间相互关联&#xff0c;所以各个表结构之间也存在着各种对应关系 2、多表关系分类 &#xff08;1&#xff0…

你用过 Maven Shade 插件吗?

文章首发地址 Maven Shade插件是Maven构建工具的一个插件&#xff0c;用于构建可执行的、可独立运行的JAR包。它解决了依赖冲突的问题&#xff0c;将项目及其所有依赖&#xff08;包括传递依赖&#xff09;合并到一个JAR文件中。 下面是对Maven Shade插件的一些详解&#xff…

202330读书笔记|《中国百年文学经典桥梁书(全8册)》——故乡,匆匆,春,背影,白鹅,百草园

202330读书笔记|《中国百年文学经典桥梁书&#xff08;全8册&#xff09;》——故乡&#xff0c;匆匆&#xff0c;春&#xff0c;背影&#xff0c;白鹅&#xff0c;百草园 《中国百年文学经典桥梁书&#xff08;全8册&#xff09;》作者朱自清&#xff0c;鲁迅等。很多都是小学…

从软件工程师角度聊聊 Kubernetes

作为软件工程师&#xff0c;我们应该熟悉 K8s&#xff0c;尽管它有点像 DevOps&#xff0c;但它能让我们更好地了解幕后发生的事情&#xff0c;让我们与部署工作更密切相关&#xff0c;更有责任感。本文将从软件工程师的角度探讨 Kubernetes (K8s)&#xff0c;我们将介绍其动机…

无涯教程-JavaScript - IMSECH函数

描述 IMSECH函数以x yi或x yj文本格式返回复数的双曲正割。复数的双曲正割被定义为双曲余弦的倒数,即 六(z) 1/cosh(z) 语法 IMSECH (inumber)争论 Argument描述Required/OptionalInumberA complex number for which you want the hyperbolic secant.Required Notes Ex…

zookeeper/HA集群配置

1.zookeep配置 1.1 安装4台虚拟机 &#xff08;1&#xff09;按照如下设置准备四台虚拟机&#xff0c;其中三台作为zookeeper&#xff0c;配置每台机器相应的IP&#xff0c;hostname&#xff0c;下载vim&#xff0c;ntpdate配置定时器定时更新时间&#xff0c;psmisc&#xff…

linux 进程隔离Namespace 学习

一、linux namespace 介绍 1.1、概念 Linux Namespace是Linux内核提供的一种机制&#xff0c;它用于隔离不同进程的资源视图&#xff0c;使得每个进程都拥有独立的资源空间&#xff0c;从而实现进程之间的隔离和资源管理。 Linux Namespace的设计目标是为了解决多个进程之间…

Android Jetpack架构组件库:Hilt

一、开发者官网关于Hilt库使用链接如下 使用 Hilt 实现依赖项注入 Hilt版本说明 二、工程目录图 请点击下面工程名称&#xff0c;跳转到代码的仓库页面&#xff0c;将工程 下载下来 Demo Code 里有详细的注释 代码&#xff1a;LearnJetpack-hilt&#xff1a;hilt版本2.48 代…

国标GB28181协议视频平台EasyGBS国标平台设备播放断流现象的排查分析及解决

EasyGBS平台基于GB28181国标协议&#xff0c;支持多路设备接入&#xff0c;并对多平台、多终端分发出RTSP、RTMP、FLV、HLS、WebRTC等多种格式的视频流。平台可为大数据等综合性监管平台提供极强的视频能力&#xff0c;已经在大量的项目中落地应用&#xff0c;如明厨亮灶、平安…

【C++心愿便利店】No.5---构造函数和析构函数

文章目录 前言一、类的6个默认成员函数二、构造函数三、析构函数 前言 &#x1f467;个人主页&#xff1a;小沈YO. &#x1f61a;小编介绍&#xff1a;欢迎来到我的乱七八糟小星球&#x1f31d; &#x1f4cb;专栏&#xff1a;C 心愿便利店 &#x1f511;本章内容&#xff1a;类…

20230904 QT客户端服务器搭建聊天室

Ser cpp#include "app.h" #include "ui_app.h"APP::APP(QWidget *parent):QWidget(parent),ui(new Ui::APP) {ui->setupUi(this);this->resize(550,400);ui->Line->setAlignment(Qt::AlignCenter);//标签文本对齐方式 居中ui->Line->se…