栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

模拟一系列相互依赖的调用

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

模拟一系列相互依赖的调用

我同意,就目前的代码而言,对您描述的方式进行单元测试没有多大意义。但是,这不只是因为要进行大量工作:测试的目标当然是在代码中发现错误。单元测试的目的是发现那些可以在隔离单元中发现的错误。但是,示例代码的很大一部分与与外部库的交互有关。

在算法级别上,几乎没有代码,例如:

os.path.join(path, "%d.txt" % i)

要么

u = u'http://example.com/%s/accreditation' % i

或创建输出文件内容。

也就是说,如果代码中存在错误,则它们很可能处于交互级别:使用正确的参数以正确的顺序,正确的格式的参数等调用正确的库函数-
使用库的模拟,但是,您不会发现交互错误,因为模拟是您实现的,并且只会反映您(可能是错误的)对库行为的理解。

我对测试此代码的建议是:将算法代码与与库进行交互的代码分开。例如,您可以创建小的辅助函数来计算输出文件名和输入URL。您可以在代码的交互主导部分中,从网页中提取所有数据,然后(在单独的功能中)使用所有这些数据创建输出文件内容。

然后可以使用单元测试来测试所有这些辅助功能。您将使用集成测试来测试的其余功能。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/468955.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号