我正在测试一个脚本,该脚本在给定一些参数的情况下,将数据从我们的API复制到CDN上的某个位置。
然而,这种情况不断变化。我该如何为它添加测试?或许在API中添加一些东西,在给定一些参数时总会返回相同的东西?
谢谢!
答案 0 :(得分:6)
您正在触及单元测试的一个非常重要的方面:它会强制您编写“好”代码。如果您希望代码在您所描述的案例中成功测试,则 使用inversion of control和separation of concerns等良好做法。
换句话说,要编写成功的测试,您需要来抽象出您的依赖项,最好是接口。然后,您可以通过注入该接口的stub或mocked实现来运行测试,该实现具有可重现且可控的输出。通过这样做,您只测试被测单元的逻辑(行为或状态,取决于品味),而不是依赖性。它迫使人们关注你。
(我会举例,但你没有说明你正在使用哪种语言)
答案 1 :(得分:1)
我不是想成为一个聪明的人,但是,如果你没有明确的期望,那么在测试中你没有什么可以断言的。
测试应该存在的一切。如果你不关心输出的某些部分,只需测试它的存在。如果输出中存在某些内容的相关性,请测试它。
答案 2 :(得分:0)
你的答案已经开始了。要测试脚本,您需要一个测试框架,允许您将已知的输入状态提供给脚本,捕获输出,并检查输出是否正确。
目前尚不清楚“这个”(不断变化)的指称是什么。 CDN上的位置?如果是这样,您需要冻结该位置进行测试。