[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M73AMNC37DW5HDEV49T3EBNA":3,"skill-same:01M73AMNC37DW5HDEV49T3EBNA":104},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":16,"sourceHtmlUrl":17,"categories":18,"keywords":19,"publishedAt":20,"linkOnly":21,"markdownContent":22,"markdownBody":23,"frontMatter":24,"refName":27,"commitSha":28,"skillDirectory":29,"forksCount":30,"repositoryHtmlUrl":31,"repositoryHomepageUrl":6,"ownerHtmlUrl":32,"ownerBlogUrl":33,"ownerDescription":6,"updatedAt":34,"install":35,"resources":48},"01M73AMNC37DW5HDEV49T3EBNA","vue-testing-best-practices",null,"Use for Vue.js testing. Covers Vitest, Vue Test Utils, component testing, mocking, testing patterns, and Playwright for E2E testing.","qhjqhj00\u002Fresearch-skills-pool","qhjqhj00","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F29684092?v=4","01M72AE0ZGXVM5C57N512DGQG8","Tommy Chien","01M72AE107ESJMHT7QC5SXX144",3,"MIT","https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Fskills_collected\u002Fantfu--skills--skills__vue-testing-best-practices\u002FLICENSE.md","https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Fskills_collected\u002Fantfu--skills--skills__vue-testing-best-practices\u002FSKILL.md",[],[],"2026-11-11 15:11:14",false,"---\nname: vue-testing-best-practices\nversion: 1.0.0\nlicense: MIT\nauthor: github.com\u002Fvuejs-ai\ndescription: Use for Vue.js testing. Covers Vitest, Vue Test Utils, component testing, mocking, testing patterns, and Playwright for E2E testing.\n---\n\nVue.js testing best practices, patterns, and common gotchas.\n\n### Testing\n- Setting up test infrastructure for Vue 3 projects → See [testing-vitest-recommended-for-vue](reference\u002Ftesting-vitest-recommended-for-vue.md)\n- Tests keep breaking when refactoring component internals → See [testing-component-blackbox-approach](reference\u002Ftesting-component-blackbox-approach.md)\n- Tests fail intermittently with race conditions → See [testing-async-await-flushpromises](reference\u002Ftesting-async-await-flushpromises.md)\n- Composables using lifecycle hooks or inject fail to test → See [testing-composables-helper-wrapper](reference\u002Ftesting-composables-helper-wrapper.md)\n- Getting \"injection Symbol(pinia) not found\" errors in tests → See [testing-pinia-store-setup](reference\u002Ftesting-pinia-store-setup.md)\n- Components with async setup won't render in tests → See [testing-suspense-async-components](reference\u002Ftesting-suspense-async-components.md)\n- Snapshot tests keep passing despite broken functionality → See [testing-no-snapshot-only](reference\u002Ftesting-no-snapshot-only.md)\n- Choosing end-to-end testing framework for Vue apps → See [testing-e2e-playwright-recommended](reference\u002Ftesting-e2e-playwright-recommended.md)\n- Tests need to verify computed styles or real DOM events → See [testing-browser-vs-node-runners](reference\u002Ftesting-browser-vs-node-runners.md)\n- Testing components created with defineAsyncComponent fails → See [async-component-testing](reference\u002Fasync-component-testing.md)\n- Teleported modal content can't be found in wrapper queries → See [teleport-testing-complexity](reference\u002Fteleport-testing-complexity.md)\n\n## Reference\n\n- [Vue.js Testing Guide](https:\u002F\u002Fvuejs.org\u002Fguide\u002Fscaling-up\u002Ftesting)\n- [Vue Test Utils](https:\u002F\u002Ftest-utils.vuejs.org\u002F)\n- [Vitest Documentation](https:\u002F\u002Fvitest.dev\u002F)\n- [Playwright Documentation](https:\u002F\u002Fplaywright.dev\u002F)\n","Vue.js testing best practices, patterns, and common gotchas.\n\n### Testing\n- Setting up test infrastructure for Vue 3 projects → See [testing-vitest-recommended-for-vue](reference\u002Ftesting-vitest-recommended-for-vue.md)\n- Tests keep breaking when refactoring component internals → See [testing-component-blackbox-approach](reference\u002Ftesting-component-blackbox-approach.md)\n- Tests fail intermittently with race conditions → See [testing-async-await-flushpromises](reference\u002Ftesting-async-await-flushpromises.md)\n- Composables using lifecycle hooks or inject fail to test → See [testing-composables-helper-wrapper](reference\u002Ftesting-composables-helper-wrapper.md)\n- Getting \"injection Symbol(pinia) not found\" errors in tests → See [testing-pinia-store-setup](reference\u002Ftesting-pinia-store-setup.md)\n- Components with async setup won't render in tests → See [testing-suspense-async-components](reference\u002Ftesting-suspense-async-components.md)\n- Snapshot tests keep passing despite broken functionality → See [testing-no-snapshot-only](reference\u002Ftesting-no-snapshot-only.md)\n- Choosing end-to-end testing framework for Vue apps → See [testing-e2e-playwright-recommended](reference\u002Ftesting-e2e-playwright-recommended.md)\n- Tests need to verify computed styles or real DOM events → See [testing-browser-vs-node-runners](reference\u002Ftesting-browser-vs-node-runners.md)\n- Testing components created with defineAsyncComponent fails → See [async-component-testing](reference\u002Fasync-component-testing.md)\n- Teleported modal content can't be found in wrapper queries → See [teleport-testing-complexity](reference\u002Fteleport-testing-complexity.md)\n\n## Reference\n\n- [Vue.js Testing Guide](https:\u002F\u002Fvuejs.org\u002Fguide\u002Fscaling-up\u002Ftesting)\n- [Vue Test Utils](https:\u002F\u002Ftest-utils.vuejs.org\u002F)\n- [Vitest Documentation](https:\u002F\u002Fvitest.dev\u002F)\n- [Playwright Documentation](https:\u002F\u002Fplaywright.dev\u002F)\n",{"name":5,"author":25,"license":15,"version":26,"description":7},"github.com\u002Fvuejs-ai","1.0.0","master","c247302c836de6438d746b45670990eb71691166","skills_collected\u002Fantfu--skills--skills__vue-testing-best-practices",1,"https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool","https:\u002F\u002Fgithub.com\u002Fqhjqhj00","chien.io","2026-05-11 15:07:59",{"source":8,"skillName":5,"commands":36,"prompt":46,"zipAvailable":47},[37,40,43],{"tool":38,"command":39},"npx","npx skills add qhjqhj00\u002Fresearch-skills-pool --skill vue-testing-best-practices",{"tool":41,"command":42},"bunx","bunx skills add qhjqhj00\u002Fresearch-skills-pool --skill vue-testing-best-practices",{"tool":44,"command":45},"pnpm","pnpm dlx skills add qhjqhj00\u002Fresearch-skills-pool --skill vue-testing-best-practices","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Fskills_collected\u002Fantfu--skills--skills__vue-testing-best-practices\u002FSKILL.md",true,[49,54,60,64,68,72,76,80,84,88,92,96,100],{"path":50,"resourceType":51,"resourceTypeDesc":52,"sizeBytes":53,"sourceHtmlUrl":16},"LICENSE.md","LICENSE","许可证",1098,{"path":55,"resourceType":56,"resourceTypeDesc":57,"sizeBytes":58,"sourceHtmlUrl":59},"reference\u002Fasync-component-testing.md","REFERENCE","参考文档",4896,"https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Fskills_collected\u002Fantfu--skills--skills__vue-testing-best-practices\u002Freference\u002Fasync-component-testing.md",{"path":61,"resourceType":56,"resourceTypeDesc":57,"sizeBytes":62,"sourceHtmlUrl":63},"reference\u002Fteleport-testing-complexity.md",4136,"https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Fskills_collected\u002Fantfu--skills--skills__vue-testing-best-practices\u002Freference\u002Fteleport-testing-complexity.md",{"path":65,"resourceType":56,"resourceTypeDesc":57,"sizeBytes":66,"sourceHtmlUrl":67},"reference\u002Ftesting-async-await-flushpromises.md",5254,"https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Fskills_collected\u002Fantfu--skills--skills__vue-testing-best-practices\u002Freference\u002Ftesting-async-await-flushpromises.md",{"path":69,"resourceType":56,"resourceTypeDesc":57,"sizeBytes":70,"sourceHtmlUrl":71},"reference\u002Ftesting-browser-vs-node-runners.md",5623,"https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Fskills_collected\u002Fantfu--skills--skills__vue-testing-best-practices\u002Freference\u002Ftesting-browser-vs-node-runners.md",{"path":73,"resourceType":56,"resourceTypeDesc":57,"sizeBytes":74,"sourceHtmlUrl":75},"reference\u002Ftesting-component-blackbox-approach.md",4753,"https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Fskills_collected\u002Fantfu--skills--skills__vue-testing-best-practices\u002Freference\u002Ftesting-component-blackbox-approach.md",{"path":77,"resourceType":56,"resourceTypeDesc":57,"sizeBytes":78,"sourceHtmlUrl":79},"reference\u002Ftesting-composables-helper-wrapper.md",6119,"https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Fskills_collected\u002Fantfu--skills--skills__vue-testing-best-practices\u002Freference\u002Ftesting-composables-helper-wrapper.md",{"path":81,"resourceType":56,"resourceTypeDesc":57,"sizeBytes":82,"sourceHtmlUrl":83},"reference\u002Ftesting-e2e-playwright-recommended.md",6581,"https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Fskills_collected\u002Fantfu--skills--skills__vue-testing-best-practices\u002Freference\u002Ftesting-e2e-playwright-recommended.md",{"path":85,"resourceType":56,"resourceTypeDesc":57,"sizeBytes":86,"sourceHtmlUrl":87},"reference\u002Ftesting-no-snapshot-only.md",6283,"https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Fskills_collected\u002Fantfu--skills--skills__vue-testing-best-practices\u002Freference\u002Ftesting-no-snapshot-only.md",{"path":89,"resourceType":56,"resourceTypeDesc":57,"sizeBytes":90,"sourceHtmlUrl":91},"reference\u002Ftesting-pinia-store-setup.md",6249,"https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Fskills_collected\u002Fantfu--skills--skills__vue-testing-best-practices\u002Freference\u002Ftesting-pinia-store-setup.md",{"path":93,"resourceType":56,"resourceTypeDesc":57,"sizeBytes":94,"sourceHtmlUrl":95},"reference\u002Ftesting-suspense-async-components.md",6448,"https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Fskills_collected\u002Fantfu--skills--skills__vue-testing-best-practices\u002Freference\u002Ftesting-suspense-async-components.md",{"path":97,"resourceType":56,"resourceTypeDesc":57,"sizeBytes":98,"sourceHtmlUrl":99},"reference\u002Ftesting-vitest-recommended-for-vue.md",5039,"https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Fskills_collected\u002Fantfu--skills--skills__vue-testing-best-practices\u002Freference\u002Ftesting-vitest-recommended-for-vue.md",{"path":101,"resourceType":56,"resourceTypeDesc":57,"sizeBytes":102,"sourceHtmlUrl":103},"SYNC.md",162,"https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Fskills_collected\u002Fantfu--skills--skills__vue-testing-best-practices\u002FSYNC.md",[105,112,119,126,133,140],{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":111,"publishedAt":20},"01M73JJB6EQPFPPVQK2Y9N67Q0","transformer-lens-interpretability","Provides guidance for mechanistic interpretability research using TransformerLens to inspect and manipulate transformer internals via HookPoints and activation caching. Use when reverse-engineering model algorithms, studying attention patterns, or performing activation patching experiments.","https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Ftop100-runs\u002F130-transformer-lens\u002FSKILL.md",[],[],{"skillNo":113,"name":114,"nameZh":6,"description":115,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":116,"categories":117,"keywords":118,"publishedAt":20},"01M73JHTANRRWEE9HP98TPEHAY","wiki-vitepress","Packages generated wiki Markdown into a VitePress static site with dark theme, dark-mode Mermaid diagrams with click-to-zoom, and production build output. Use when the user wants to create a browsable website from generated wiki pages.","https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Ftop100-runs\u002F126-wiki-vitepress\u002FSKILL.md",[],[],{"skillNo":120,"name":121,"nameZh":6,"description":122,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":123,"categories":124,"keywords":125,"publishedAt":20},"01M73JHJBMVFW46F1Y8K3SBF43","phoenix-observability","Open-source AI observability platform for LLM tracing, evaluation, and monitoring. Use when debugging LLM applications with detailed traces, running evaluations on datasets, or monitoring production AI systems with real-time insights.","https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Ftop100-runs\u002F124-phoenix\u002FSKILL.md",[],[],{"skillNo":127,"name":128,"nameZh":6,"description":129,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":130,"categories":131,"keywords":132,"publishedAt":20},"01M73JHFPA3A2806PMP42ZN86Q","frontend-ui-dark-ts","Build dark-themed React applications using Tailwind CSS with custom theming, glassmorphism effects, and Framer Motion animations. Use when creating dashboards, admin panels, or data-rich interfaces with a refined dark aesthetic.","https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Ftop100-runs\u002F123-frontend-ui-dark-ts\u002FSKILL.md",[],[],{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":139,"publishedAt":20},"01M73JFVBVK57NRJS49TT2VDCT","tensorboard","Visualize training metrics, debug models with histograms, compare experiments, visualize model graphs, and profile performance with TensorBoard - Google's ML visualization toolkit","https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Ftop100-runs\u002F113-tensorboard\u002FSKILL.md",[],[],{"skillNo":141,"name":142,"nameZh":6,"description":143,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":144,"licenseFileUrl":6,"sourceHtmlUrl":145,"categories":146,"keywords":147,"publishedAt":20},"01M73JFF6PK6ZCN41C89J7HS2B","markdown-mermaid-writing","Comprehensive markdown and Mermaid diagram writing skill. Use when creating any scientific document, report, analysis, or visualization. Establishes text-based diagrams as the default documentation standard with full style guides (markdown + mermaid), 24 diagram type references, and 9 document templates.","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fqhjqhj00\u002Fresearch-skills-pool\u002Fblob\u002Fmaster\u002Ftop100-runs\u002F110-markdown-mermaid-writing\u002FSKILL.md",[],[]]