На самом деле, неясно, чего вы хотите достичь с помощью этого теста, это выглядит сложно.Если вы хотите протестировать только Grid
компонент или инициализировать его с некоторыми слотами, я рекомендую написать что-то читаемое и избегать использования других компонентов:
// example
const wrapper = mount(Grid, {
slots: {
default: columns.map(c => `<div class="foo">${c.id}</div>`)
}
});
expect(wrapper.findAll('.foo').length).toBe(2)
Если вы хотите протестировать эту часть:
// for example, GridUsage.vue
<Grid>
<Column v-for="(element, index) in list" :key=index />
</Grid>
Так что просто протестируйте компонент, в котором существует это использование, он не несет ответственности за Grid.vue
// example part of test file
const columns = [
{
id: 'col1',
},
{
id: 'col2',
},
];
const wrapper = mount(GridUsage, { propsData: { list: columns } });
expect(wrapper.findAll(Column).length).toBe(2)
И, конечно, для Column.vue
* 1014 должен быть отдельный тест* Документы:
Vue Test Utils-Опции монтажа-Слоты