๏ผVue 2.7 ใฏใฉในใณใณใใผใใณใ โ Composition API ๆธใๆใๅฎไพ๏ผ
ใฏใฉในใณใณใใผใใณใใงใฏ
โ wrapper.vm ใฎ็ถๆ
ใ่ฆใชใใ html() ใในใใใใทใงใใ
Composition API ใงใฏ
โ wrapper.vm ใซ data, computed, methods ใๅญๅจใใชใ
โ ในใใใใทใงใใใฏๅฟ
ใ wrapper.html() ใ wrapper.find().html() ใง DOM ๅบๅใใๅใใ
โ ใ่ฆใ็ฎใใซๆณจ็ฎใใในใใใใทใงใใ่จญ่จใซๅคใใใ
<template>
<p>{{ message }}</p>
</template>
<script lang="ts">
import { Vue, Component } from 'vue-property-decorator';
@Component
export default class Message extends Vue {
message: string = 'Hello, Vue!';
}
</script>
import { shallowMount } from '@vue/test-utils';
import Message from '@/components/Message.vue';
describe('Message.vue (ใฏใฉใน)', () => {
it('ๅๆในใใใใทใงใใ', () => {
const wrapper = shallowMount(Message);
expect(wrapper.html()).toMatchSnapshot();
});
});
<template>
<p>{{ message }}</p>
</template>
<script lang="ts" setup>
import { ref } from 'vue';
const message = ref('Hello, Vue!');
</script>
import { shallowMount } from '@vue/test-utils';
import Message from '@/components/Message.vue';
describe('Message.vue (Composition API)', () => {
it('ๅๆในใใใใทใงใใ', () => {
const wrapper = shallowMount(Message);
expect(wrapper.html()).toMatchSnapshot(); // โ ๆธใๆนใฏๅใใๅ
้จใฏ้ใ
});
});
โ ่กจ้ขใฎๆธใๆนใฏๅคใใใชใใใvm ใไฝฟใใ html() ใซไพๅญใใใฎใ้่ฆใช้ใใ