Javascript 如何将对象属性中的单元测试分支覆盖为函数

Javascript 如何将对象属性中的单元测试分支覆盖为函数,javascript,node.js,unit-testing,mocha.js,nock,Javascript,Node.js,Unit Testing,Mocha.js,Nock,您好,我正在编写我的函数的单元测试用例,就像 const Services = { test: async (token) => { .. ... } } 我已经编写了这个函数的单元测试,报告说测试覆盖了这个函数的所有行,但是async(token)=>{在报告中以黄色背景显示,这意味着未覆盖的分支 it("test return 200", async () => { nock(url) .get('/test')

您好,我正在编写我的函数的单元测试用例,就像

const Services = {

   test: async (token) => {

    .. ...

   }

}
我已经编写了这个函数的单元测试,报告说测试覆盖了这个函数的所有行,但是
async(token)=>{
在报告中以黄色背景显示,这意味着未覆盖的分支

it("test return 200", async () => {

    nock(url)
        .get('/test')
        .reply(200, response);

    const res = await connector.Services.test(token);

    res.should.have.property('name');
});

有人知道可能是什么问题吗?

如果您将函数定义重新格式化为此格式,未覆盖的分支是否仍然显示?
异步测试(令牌){/*新行上的函数体*/}
另外,您是否在使用任何类型的编译器,如Babel?如果是这样,Babel可能会更改您的代码结构,使其在函数声明中引入一个分支,您在源代码中看不到该分支,但coverage instrumenter报告了一个未经测试的分支。1.从技术上讲,
async(token)=>{…}
本身并不是一个真正的分支。它是一个对象的值。但是,由于该值是“可执行的”(因为它的类型是
函数
)我觉得可以把它看作一个分支。2.你能展示完整的代码吗?例如,展示
服务
测试
函数的确切功能;类似地,
响应
对象在
it()的主体中传递了什么
。如果不知道这些细节,很难猜测运行时发生了什么。