《Web测试囧事》——2.3 修改产品代码时忽视了对遗留数据的处理

简介:

本节书摘来自华章计算机《Web测试囧事》一书中的第2章,第2.3节,作者 黄勇 雷辉 徐潇 杨雪敏,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

2.3 修改产品代码时忽视了对遗留数据的处理

在线购物平台通常允许商户展示很多商品信息,而商户一般会批量上传这些信息。小蔡所在的产品团队也为用户提供了这一功能,允许他们使用规定格式的XML文件批量上传商品信息(见图2-3)。

image

以批量上传图书信息为例,商户通过在XML里设置店铺的ID,商品ID、分类、名称、ISBN、作者、图书类别、价格、出版日期、简介和图书页数,就可以一次性完成多本图书信息的上传。

在功能上线后的一段时间内,业务方根据商户使用的反馈,发现需要对上传XML的字段进行如下修改。

image

产品团队很快根据业务方的反馈进行了代码的修改,修改后的XML格式如图2-4所示。

image

对于业务方反馈的第一点枚举值的问题,产品团队在代码中进行了修改;而对于第2点中商户不设置主图的处理,产品团队同样只能在代码中进行改动。

小蔡在XML修改前后都使用上传XML的方式进行了测试,没有发现问题。在完成相关功能测试后,她在执行探索性测试时,发现对之前的遗留数据,也就是更改XML和产品代码之前的商品页面进行浏览的时候,页面会显示错误信息,而新上传的商品却没有问题。

这次功能修改只包含业务方提出的3个反馈,所以小蔡和开发人员根据这个思路寻找问题所在。

image

开发人员很快对这个问题进行了修改和部署,小蔡根据这次的经验,全面地设计并完成了各种测试场景。

小蔡通过这个例子学到了一点:在功能上线使用的情况下,如果对功能涉及的数据字段有了修改,一定要测试对遗留数据的处理和兼容情况,最好在设计和编写代码时就考虑对遗留数据进行数据迁移(Data migration),并为之设计回归测试。

image
image

相关文章
|
29天前
|
安全 测试技术 网络安全
如何在Python Web开发中进行安全测试?
如何在Python Web开发中进行安全测试?
|
29天前
|
安全 关系型数据库 测试技术
学习Python Web开发的安全测试需要具备哪些知识?
学习Python Web开发的安全测试需要具备哪些知识?
33 4
|
1月前
|
安全 Linux 虚拟化
|
10天前
|
Web App开发 IDE JavaScript
Selenium IDE:Web自动化测试的得力助手
Selenium IDE:Web自动化测试的利器。作为开源工具,Selenium IDE支持录制与回放用户操作,适用于Chrome、Firefox等多浏览器,简化了测试流程,提升了效率,降低了自动化测试的门槛。它还支持导出多种编程语言的脚本,便于测试集成与复用。
61 19
Selenium IDE:Web自动化测试的得力助手
|
12天前
|
Web App开发 IDE 测试技术
Selenium:强大的 Web 自动化测试工具
Selenium 是一款强大的 Web 自动化测试工具,包括 Selenium IDE、WebDriver 和 Grid 三大组件,支持多种编程语言和跨平台操作。它能有效提高测试效率,解决跨浏览器兼容性问题,进行性能测试和数据驱动测试,尽管存在学习曲线较陡、不稳定等缺点,但其优势明显,是自动化测试领域的首选工具。
92 17
Selenium:强大的 Web 自动化测试工具
|
19天前
|
开发框架 .NET PHP
ASP.NET Web Pages - 添加 Razor 代码
ASP.NET Web Pages 使用 Razor 标记添加服务器端代码,支持 C# 和 Visual Basic。Razor 语法简洁易学,类似于 ASP 和 PHP。例如,在网页中加入 `@DateTime.Now` 可以实时显示当前时间。
|
25天前
|
机器学习/深度学习 算法 UED
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法。本文介绍 A/B 测试的基本概念、步骤及其在模型评估、算法改进、特征选择和用户体验优化中的应用,同时提供 Python 实现示例,强调其在确保项目性能和用户体验方面的关键作用。
29 6
|
22天前
|
并行计算 算法 测试技术
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面,旨在通过综合策略提升程序性能,满足实际需求。
51 1
|
27天前
|
机器学习/深度学习 算法 UED
在数据驱动时代,A/B 测试成为评估机器学习项目效果的重要手段
在数据驱动时代,A/B 测试成为评估机器学习项目效果的重要手段。本文介绍了 A/B 测试的基本概念、步骤及其在模型评估、算法改进、特征选择和用户体验优化中的应用,强调了样本量、随机性和时间因素的重要性,并展示了 Python 在 A/B 测试中的具体应用实例。
28 1
|
29天前
|
监控 安全 测试技术
如何在实际项目中应用Python Web开发的安全测试知识?
如何在实际项目中应用Python Web开发的安全测试知识?
28 4
下一篇
DataWorks