登录提交后,赛普拉斯不会重定向到主页

时间:2021-03-06 20:01:55

标签: reactjs testing next.js cypress

我正在尝试在用户登录后测试重定向,但它不起作用。如果我在测试之外这样做,它就可以工作(它重定向到“/主页”页面)。

提交是通过 redux 的调度处理的,但我认为这不是问题,因为我之前测试过,做了一些更改并且它有效。

这是登录表单:

const submit = (data: AuthData) => {
    dispatch(login(data));
    router.push('/home');
  };

  return (
    <div>
      <form noValidate onSubmit={handleSubmit(submit)}>
        {inputs.map((input) => (
          <div key={input.name} className="text-left mb-3">
            <label htmlFor={input.name} className="form-label">
              {input.label}
            </label>
            <Input
              register={register}
              name={input.name}
              type={input.type}
              placeholder={input.placeholder}
              error={errors[input.name]}
            />
            <div className={'invalid-feedback'}>{errors[input.name]?.message}</div>
          </div>
        ))}

        <div className="text-center mt-3">
          <Button className={'btn btn-primary btn-lg btn-block'} type={ButtonType.submit}>
            Submit
          </Button>
        </div>
      </form>
    </div>
  );

这是登录测试:

describe('Login Page', () => {
  it('Login correctly', () => {
      cy.get('#email').clear().type('user@mail.com');
      cy.get('#password').clear().type('123456');
      cy.get('.btn').click();
      cy.get('.btn').click();
      cy.get('[data-cy=home]');
    });
});

这是我得到的错误 enter image description here

0 个答案:

没有答案