当我将这段代码放在一个jasmine规范文件中时,它是完全不起作用的。无论它是在一个' It‘块中,还是完全在测试块之外,它都会停止工作。
const AWS = require("aws-sdk");
const cf = new AWS.CloudFormation({ apiVersion: "2010-05-15" });
cf.listStacks({}, (err, data) => console.log('cf.listStacks: ', err, data));这会是什么呢?
发布于 2019-05-13 08:39:14
要测试aws- sdk,而不是直接使用sdk,我认为您应该看看aws-sdk-mock。
通过使用存根,您可以在测试使用AWS SDK的函数时防止调用实际的AWS服务。
发布于 2019-05-21 04:54:23
我怀疑是因为aws-sdk js使用了jasmine,所以他们让它在jasmine内部无法工作。
此外,最好将特定的aws代码分离到一个函数中,然后调用一个“处理器”函数来处理传入或传出的数据。这样,我就可以测试我编写的代码的功能,并且只信任aws数据。它也比创建AWS mock简单得多。此外,“模仿你不拥有的东西”通常被认为是糟糕的实践,因为你不能保证它是如何工作的。
https://stackoverflow.com/questions/56104514
复制相似问题