I have written some simple end-to-end tests, and in one test am having difficulty finding a page element. Has anyone seen the behavior when using Chimp, where the subsequent search of a found page element, is not found?
Note, the element is a react-router-dom ‘Link’, that is wrapped by react-meteor-data createContainer.
Any help or clarification appreciated.
- test
describe("Sign-up Page", function () {
it("displays signup when join button clicked", function () {
const homePage = "http://localhost:3000";
const joinLink = "#navbarJoinLink";
const signUp = "div.sidebar > div.pitch";
browser.url(homePage); // succeeds
browser.waitForExist(joinLink); // succeeds
browser.click(joinLink); // fails, element not found
expect(browser.waitForExist(signUp)).toBe(true); // not executed
});
});
- running chimp
chimp --ddp=http://localhost:3000 --jasmine --path=./tests/end-to-end/
- running meteor test server
meteor test --full-app --settings settings.json --driver-package tmeasday:acceptance-test-driver
- reporter error message
Error: An element could not be located on the page using the given search parameters.
- some other details
- I can find the element in browser console, via jquery
$("#navbarJoinLink")
- even running waitForExist on the same element twice in a row (instead of click), the second call will fail with element not found
- another identical test written for a different link (anchor) succeeds (the difference being, that link is not wrapped in createContainer)
- I can find the element in browser console, via jquery