簡體   English   中英

如何測試 Quasar(作為 Vue CLI 插件)?

[英]How to test Quasar (as Vue CLI plugin)?

我有 Vue 項目,我在這里使用Quasar Framework 我用作Vue CLI 插件的最后一個,它運行良好(代碼倉庫和實時 url )。

現在我想在我的項目中添加一些單元測試(使用 jest),我遇到了一個我不明白的問題..

我嘗試為NetworkWatcher組件編寫一個簡單的測試。 該組件使用QIcon組件,我必須在我的測試中導入它:

import { Quasar, QIcon } from "quasar";
import NetworkWatcher from "@/components/NetworkWatcher.vue";

const localVue = createLocalVue();

localVue.use(Vuex);
localVue.use(Quasar, { components: { QIcon } });

describe("NetworkWatcher.vue", () => {});

在這種情況下,我有一個錯誤:

在此處輸入圖像描述

經過一些實驗和搜索,我接下來嘗試了

import * as AllQuasar from "quasar";
const { Quasar } = AllQuasar;

const components = Object.keys(AllQuasar).reduce((object, key) => {
  const val = AllQuasar[key];
  if (val && val.component && val.component.name != null) {
    object[key] = val;
  }
  return object;
}, {});

const localVue = createLocalVue();

localVue.use(Vuex);
localVue.use(Quasar, { components });

它有效,我可以通過這種方式 go .. 但我不喜歡它。 好像錯了? 那么為什么第一種方法行不通呢?

我知道 Quasar 有一個很好的“Quasar CLI”版本文檔,甚至有它自己的測試運行器。 但我想使用“Vue CLI 插件”版本。

嘗試使用下面的代碼,因為它無法正確解決類星體依賴關系。

import { Quasar, QIcon } from "quasar-framework/dist/quasar.mat.esm"; //this line is modified 
import NetworkWatcher from "@/components/NetworkWatcher.vue";

const localVue = createLocalVue();

localVue.use(Vuex);
localVue.use(Quasar, { components: { QIcon } });

describe("NetworkWatcher.vue", () => {});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM