๏ผ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()
ใซไพๅญใใใฎใ้่ฆใช้ใใ