-
Notifications
You must be signed in to change notification settings - Fork 3.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cannot read property 'indexOf' of undefined when using .type() #6125
Comments
@jennifer-shehane .. just following up on this? any ETA on when this would get fixed? I'm super excited to try out 4.0 but unfortunately can't due to this bug. |
cypress/packages/driver/src/cy/keyboard.ts Line 906 in 4618650
Changing |
It seems that the problem is more with When you beautify the problematic code, you can find that n = this.Event = this.DOMEvent = new Type("DOMEvent", function(n, i) {
if (i || (i = window),
n = n || i.event,
n.$extended)
return n;
this.event = n,
this.$extended = !0,
this.shift = n.shiftKey,
this.control = n.ctrlKey,
this.alt = n.altKey,
this.meta = n.metaKey;
for (var r = this.type = n.type, s = n.target || n.srcElement; s && 3 == s.nodeType;)
s = s.parentNode;
if (this.target = document.id(s),
0 == r.indexOf("key")) { But the problem is that they only considered the case when the type of So, when Cypress sent a simple I'm currently fixing this. It might take a little bit longer than expected because I need to simplify this problem and create a test case. And it also should be fixed with #5650. Interestingly, they're 2 separate problems, but the solution is the same. |
The code for this is done in cypress-io/cypress#8255, but has yet to be released. |
Released in This comment thread has been locked. If you are still experiencing this issue after upgrading to |
Current behavior:
I'm currently using Cypress version 3.4.1 to run automation tests.
I have a SignIn test suite to validate the login functionality . They are pretty straightforward tests that run against the application URL and validate if the user is able to login to the the app or not.
In Cypress 3.4.1, the login tests are executed successfully.
But when I tried to upgrade to a version > 3.4.1, for example: latest version 3.8.1, I see this error
TypeError: Cannot read property 'indexOf' of undefined
Let's take this one test should display en error on invalid login attempt as an example
I see the following error when I try to type in the username into the
#login_username
input field.Console output:
Desired behavior:
Cypress should Type the username into the input text box successfully.
Console output when the behavior is correct.
Test code to reproduce
Below is the code for the Invalid Login test
Versions
Currently used version:
Cypress 3.4.1
Chrome 79
Seeing this error in versions 3.5.0 and above.
Extra Info
The URL loads just fine and I'm able to see the sign-in screen and the cookies are loading correctly.
All other tests where I have the login functionality mocked pass 100%
I'm seeing this issue only with these tests which interact directly with the UI to login.
Workaround
I'm able to use
invoke
to change the value of the input fields, but that's not the actual purpose of the login test so I definitely need a solution.I'm a fan of Cypress and I'm super excited to see all the improvements you guys are doing! thanks a lot ❤️
The text was updated successfully, but these errors were encountered: