3

由于 laravel 黄昏,我正在测试以下内容。Vue 组件的目的是禁用用户单击的连续性,以避免注册重复数据。我要实施的测试是用户快速连续点击。

但是之后

$browser->assertSourceHas($buttonEnableSource)
->click('@submit-button-component')

测试将等待浏览器进程。因此,如果我写下以下内容,则会出现没有适用的 Vue.js 的错误。

$browser->assertSourceHas($buttonEnableSource)
->click('@submit-button-component')
->click('@submit-button-component')

有没有办法实现黄昏用户快速连续点击?

以下是源代码。

<template>
  <div>
    <input type="submit" class="button_orange button_big" :value="value" v-show="!isSubmitting" @click="startSubmit">
    <div class="button_white button_big" v-show="isSubmitting">{{ value }}</div>
  </div>
</template>

<script>
  export default {
    data() {
      return {
        isSubmitting: false,
      };
    },
    props: {
      value: {
        type: String,
        default: '',
      },
    },
    methods: {
      startSubmit() {
        this.isSubmitting = true;
      },
    },
  };
</script>


public function testRegisterDoubleClickNoDuplication()
{
    $this->browse(function (Browser $browser) {
        $buttonValue = __('common.register');
        $buttonEnableSource = "<input type=\"submit\" class=\"button_orange button_big\" value=\"{$buttonValue}\" />";
        $browser->visit(route('staffs.create'))
                ->assertSourceHas($buttonEnableSource)
                ->click('@submit-button-component')
                ->assertSourceMissing($buttonEnableSource)
                ->assertSee('スタッフ詳細');
    });
}
4

0 回答 0