第三方代码的边界问题

在软件开发中,接口提供者追求普适性,以适应多种环境,而使用者则期望定制化的解决方案。这种矛盾可能导致系统边界问题。学习性测试成为理解和整合第三方代码的有效手段,通过测试来验证对API的理解,并保持边界代码的清晰。测试应专注于可控的部分,避免过度依赖第三方代码,以减少未来的风险和复杂性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在接口提供者和使用者之间,存在与生俱来的矛盾。第三方程序包和框架提供者追求普适性,这样就能再多种环境中工作,从而吸引广泛的用户。而使用者则想要得到集中满足特定需求的接口。这种矛盾会导致系统边界上出现问题。

学习性测试

为要使用的第三方代码编写测试,可能是最符合开发者的利益。学习第三方代码很难,整合第三方代码也很难,同时做这两件事难上加难。但是我们可以尝试不同的做法,比如不要在生产代码中实验新东西,而是编写测试来浏览和理解第三方代码。Jim Newkirk把这种叫做学习性测试。

在学习性测试中,我们就想在应用中那样调用第三方代码。我们基本上是在通过核对试验来检测自己对那个API的理解程度。测试聚焦于我们想从API得到的东西。

边界上的代码需要清晰的分割和定义了期望的测试。应该避免我们的代码过多的了解第三方代码中的特定信息。依靠你能控制的东西,好过依靠你控制不了的东西,免得日后受它控制。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值