26、数据处理项目综合指南

数据处理项目综合指南

1. 项目 3.7:临时数据持久化

1.1 交付物概述

对现有应用进行重构以规范临时文件格式,会导致现有项目发生变化,这些变化会波及单元测试。不过,在重构数据模型模块时,验收测试不应有变化。而添加“从上次中断处继续”功能则会改变应用行为,这将在验收测试套件和单元测试中体现出来。交付物取决于已完成的项目和需要修订的模块。

1.2 单元测试

创建输出文件的函数需要有两个不同的测试用例固定装置(fixture)。一个固定装置包含输出文件的一个版本,另一个则没有输出文件。这些固定装置可以基于 pytest.tmp_path 构建,它提供一个唯一的临时目录,可用于存放确认现有文件是追加而非覆盖所需的文件。
- 测试用例类型
- 部分测试用例需确认现有文件是否正确扩展。
- 部分测试用例需确认文件不存在时是否能正确创建。
- 边缘情况处理
- 零长度文件 :文件已创建但未写入数据,由于没有先前数据可读取以确定先前状态,处理起来有挑战。
- 文件末尾损坏的不完整行数据 :需要巧妙使用打开文件的 seek() tell() 方法,有选择地覆盖文件中不完整的最后一条记录。一种方法是在读取每个样本前使用 tell() 方法,若文件解析器抛出异常,则定位到最后报告的 tell() 位置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值