Unit testing 为什么.vue文件中的注释标记未通过单元测试?

Unit testing 为什么.vue文件中的注释标记未通过单元测试?,unit-testing,vue.js,error-handling,jestjs,Unit Testing,Vue.js,Error Handling,Jestjs,我正在为一些按钮组件创建单元测试。我使用TypeScript。在创建第15个测试时,我失败了,上面说: ● 测试套件无法运行 C:\src\business-webMASTER\src\plugins\vuetify.js:1 ({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,global,jest) SyntaxError: Unexpected identifier 2

我正在为一些按钮组件创建单元测试。我使用TypeScript。在创建第15个测试时,我失败了,上面说:

● 测试套件无法运行

C:\src\business-webMASTER\src\plugins\vuetify.js:1
({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,global,jest)


SyntaxError: Unexpected identifier

  2 | 
  3 | import Vue from 'vue';
> 4 | import './plugins/vuetify';
    | ^
  5 | 
  6 | // Looks unused, but needed to get the trick above going
  7 | import CubeLogger from '@/Logger';

  at ScriptTransformer._transformAndBuildScript (node_modules/jest-runtime/build/script_
  at Object.<anonymous> (src/main.ts:4:1)**
C:\src\business webMASTER\src\plugins\vuetify.js:1
({“Object.”:函数(模块、导出、require、目录名、文件名、全局、jest)
SyntaxError:意外的标识符
2 | 
3 |从“Vue”导入Vue;
>4 |导入“/plugins/vuetify”;
| ^
5 | 
6 |//看起来没有使用过,但需要让上述技巧继续下去
7|从“@/Logger”导入立方记录器;
在ScriptTransformer.\u transformAndBuildScript(节点\u模块/jest运行时/build/script_
at对象。(src/main.ts:4:1)**
我打算一次又一次地抛出测试,试图找到原因,因为一切都像应该的那样,我开始清理.vue文件中的已注释内容。我清除了第一行,即已注释的v-tooltip和测试通过

一个注释标记如何成为单元测试失败的实际问题

我尝试了不同的东西,我添加了track,我看到了我的package.json,Jest配置,我看到了工作测试和失败测试之间的差异,我创建了两个相同的测试,第一个通过第二个失败-都带有注释的v-tooltip标记,我保存了注释的标记,但将标记更改为DIV例如,再次通过测试,当我返回v形工具提示失败时

失败测试的.vue文件

  <!-- <v-tooltip bottom> -->
  <v-btn depressed slot='activator' icon v-track='track'>
    <v-icon>fa-plus</v-icon>
    <!-- <v-badge color='blue lighten-1' overlap :v-model='messagesShown'>
        <span slot='badge' v-if='unreadMessagesCount > 0 && showIcon' style='font-size: 12px;'>{{ unreadMessagesCount | formatBadgeNumber }}</span>
        <v-icon v-if='messagesCount === 0'>fa fa-envelope</v-icon>
        <v-icon v-else>fa fa-envelope-open</v-icon>
    </v-badge>-->
  </v-btn>
  <!-- <span>{{ $t('biz.general.tooltip.messages') }}</span> -->
  <!-- </v-tooltip> -->
</template>



the actual test

describe('MessageIcon.vue', () => {
  let wrapper: Wrapper<any>;
  let buttons: WrapperArray<Vue>;

  beforeEach(() => {
    const el = document.createElement('div');
    el.setAttribute('data-app', 'true');
    document.body.appendChild(el);

    wrapper = mount(MessageIcon, {
      i18n
    });

    buttons = wrapper.findAll('button');
  });

  it('checks the component exists', () => {
    expect(wrapper).toBeDefined();
  });

  it('checks there is a button', () => {
    expect(buttons.length).toBe(1);
  });
});

fa plus
实际测试
描述('MessageIcon.vue',()=>{
让包装器:包装器;
let按钮:包装器数组;
在每个之前(()=>{
const el=document.createElement('div');
el.setAttribute('data-app','true');
文件.正文.附件(el);
包装器=挂载(消息图标{
i18n
});
buttons=wrapper.findAll('button');
});
它('检查组件是否存在',()=>{
expect(wrapper.toBeDefined();
});
它('检查是否有按钮',()=>{
期望(按钮.长度).toBe(1);
});
});