如何在单元测试期间模拟代理?

时间:2017-02-06 20:02:43

标签: javascript node.js ssl testing proxy

我有一个Node.js库,可以List<ContentPage> ContentPages = new List<ContentPage>(); foreach (var photo in Photos) { var page = new ContentPage(); page.BindingContext = new PhotoDetailViewModel(photo); ContentPages.Add(page); } Pages = new ObservableCollection<ContentPage>(ContentPages); https://nodejs.org/api/https.html)调用外部资源。

在某些情况下,库的用户可能在代理后面。由于代理的配置(或配置错误?),代理后面的用户可能会遇到SSL证书问题。在这种情况下,为了在Node中发出https请求,您需要将https.request选项https.request设置为rejectUnauthorized。 (在相关的说明中,这些代理通常也需要false

如何设置模拟在拒绝签名证书的代理背后的测试,以便我可以确保我的库能够为那些代理后面的人正常工作?

我使用npm --strict-ssl=false和/或mocha作为测试库,使用chai来模拟正在调用的外部源。

1 个答案:

答案 0 :(得分:0)

我会将请求包装在模块中的函数中,以便可以模拟它以获得所需的行为。

我相信this answer就是一个很好的例子。