当我将其放在茉莉花规格文件中时,此代码完全不起作用。完全在“ 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));
这可能是什么?
答案 0 :(得分:0)
要测试aws-sdk,而不是直接使用sdk,我认为您应该查看aws-sdk-mock。
通过使用存根,可以防止在测试使用AWS开发工具包的功能时调用实际的AWS服务。
答案 1 :(得分:0)
我怀疑因为aws-sdk js使用了茉莉花,所以他们使它无法在茉莉花中使用。
此外,最好将特定的aws代码分离成一个函数,然后再调用一个“处理器”函数来处理传入或传出的数据。这样,我可以测试所编写代码的功能,并且可以信任aws数据。这比创建一个AWS模拟程序要简单得多。另外,“模拟不拥有的东西”通常被认为是不好的做法,因为您不能保证它的工作原理。