数据处理项目综合指南
1. 项目 3.7:临时数据持久化
1.1 交付物概述
对现有应用进行重构以规范临时文件格式,会导致现有项目发生变化,这些变化会波及单元测试。不过,在重构数据模型模块时,验收测试不应有变化。而添加“从上次中断处继续”功能则会改变应用行为,这将在验收测试套件和单元测试中体现出来。交付物取决于已完成的项目和需要修订的模块。
1.2 单元测试
创建输出文件的函数需要有两个不同的测试用例固定装置(fixture)。一个固定装置包含输出文件的一个版本,另一个则没有输出文件。这些固定装置可以基于 pytest.tmp_path 构建,它提供一个唯一的临时目录,可用于存放确认现有文件是追加而非覆盖所需的文件。
- 测试用例类型 :
- 部分测试用例需确认现有文件是否正确扩展。
- 部分测试用例需确认文件不存在时是否能正确创建。
- 边缘情况处理 :
- 零长度文件 :文件已创建但未写入数据,由于没有先前数据可读取以确定先前状态,处理起来有挑战。
- 文件末尾损坏的不完整行数据 :需要巧妙使用打开文件的 seek() 和 tell() 方法,有选择地覆盖文件中不完整的最后一条记录。一种方法是在读取每个样本前使用 tell() 方法,若文件解析器抛出异常,则定位到最后报告的 tell() 位置
超级会员免费看
订阅专栏 解锁全文
3326

被折叠的 条评论
为什么被折叠?



