vuejs click click для тестирования мыши
У меня есть шаблон со следующим
<button type="button" id="alogin" class="btn btn-primary btn-raised btn-block btn-lg" @click="login()">Sign In</button>
функция входа довольно длинная, но состоит из
login() {
this.error = 'none';
this.error_message = null;
const self = this;
authentication.login(config, self.id_number, self.password, (err, result) => {
if (err) {
} else {
self.startSession();
}
});
}
я попробую проверить, нажав кнопку входа в систему, как после настройки
it('tries to login', () => {
LoginComponent.id_number = '293io090';
LoginComponent.password = 'password';
expect(LoginComponent.$el.querySelector('#alogin').click()).to.equal(true);
но в конечном итоге становится неопределенным. Я использовал vuejs test utils для поиска ('#alogin'), но результат все тот же. застрять
1 ответ
Если вы используете mount
или же shallowMount
от vue-test-utils
так что вы должны знать, что эти функции возвращают Wrapper
для вашего компонента и find
Метод также возвращает обертку. Таким образом, вы можете вызвать обработчик кликов следующим образом:
LoginComponent.find('#alogin').trigger('click')