nttdata-emea / cinnamon Goto Github PK
View Code? Open in Web Editor NEWA java test automation framework providing a sprinkling of abstraction
License: MIT License
A java test automation framework providing a sprinkling of abstraction
License: MIT License
Latest update guess done on 11 of Jan has removed the screenshots from our cucumber reports for the failed scenarios - as a work around we are using the old Jars of 28th Nov
Can you please fix this issue at the earliest
Hey there,
When are you planning to release cinnamon 0.1.4? pom.xml of that version contains latest WebDriverManager version from bonigarcia - 3.4.0, whereas 0.1.3 is still very much out of date with 1.7.0. It is causing a lot of grief with driver binaries management.
Regards,
Filip
In previous discussion of condition handling it was mentioned that currently condition checking does not allow timeouts to be set.
Happy to help implement this if you feel it is a good idea.
The issue can be seen here. Basically, one has to use long CSS selectors for otherwise uniquely identifiable elements.
This is not expected, I mean if I validate uniqueness in the browser, and the element is found, then I expect the framework to find it.
cannot use xpath with parameter
exemple of one
public static By ActionsButton(String text) {
return By.xpath(String.format("//div[contains(@class,'actions')][not(contains(@style,'none'))]/a[text()='"+text+"']", text));
}
you should be able to provide an exemple after you get this working , this is a feature needed in most automation frameworks.
See below email from Photobox regarding ArrayIndexOutOfBoundsException using getCookies:
_"Hello guys, I am Automation Engineer on PhotoBox project.
We are using the cinnamon framework for automation tests and currently faced with one issue.
Let me explain what I mean.
Issue related with method “getCookies()” in the package “io.magentys.cinnamon.webdriver”.
When you have cookie with empty value the exception are raised in line
The stack trace on the exception is:
java.lang.ArrayIndexOutOfBoundsException: 1
at io.magentys.cinnamon.webdriver.CinnamonWebDriverOptions.getCookies(CinnamonWebDriverOptions.java:69)
at io.magentys.cinnamon.webdriver.CinnamonWebDriverOptions.getCookieNamed(CinnamonWebDriverOptions.java:78)
at com.photobox.support.SmashSession.getSessionCodeFromCookie(SmashSession.java:25)
at com.photobox.stepdefs.registration.RegistrationStepDefs.iShouldSeeTheCheckboxStatusInTheBackoffice(RegistrationStepDefs.java:117)
at ✽.Then I should see the checkbox "News" "ticked" in the backoffice(D:/WorkSpace/PhotoBox/sc-test-automation/sc-acceptance-tests/src/test/resources/features/signInAndRegistration/newsletter_opt_in.feature:12)
[INFO - 2016-12-20T10:33:22.432Z] ShutdownReqHand - _handle - About to shutdown
I would like to ask you guys have a look to this issue, and try to fix it, as it is a cause of failing our test scenarios"_
Hello, would it be possible to publish an initial setup for a gradle project?
i want to set download file in specified location in chrome option
so in capabilities-profiles i have tried many option
driverExtras: {
"args": ["--start-maximized"],//, "--headless"],
"experimentalOption":["prefs.download.default_directory , C:\download"]
}
2)
driverExtras: {
"args": ["--start-maximized"],//, "--headless"],
"experimentalOption":{
prefs:{
"download":{
"default_directory":"C:\download" ,
"directory_upgrade": true
"extensions_to_open": ""
}
}
}
}
3)
chromeOptions:{
prefs:{
"download":{
"default_directory":"C:/download"
}
}
}
and many more
but always getting
unrecognized chrome option download.default_directory
unrecognized chrome option chromeOptions
Can you please help me to set exact parameter?
After I posted the pull request I found that there were issues with the code that I submitted. If someone could delete the existing PR, then I'll create a new one when I've got everything cleaned up.
Step1: Run the automated tests Cucumber with this command "mvn clean install -DbrowserProfile=chrome -Denv=default -Dcucumber.options="--tags @demo" -P acceptance-test@
Expected Result: Tests are starting in Browser
Actual Result: error
Currently if user wants to execute a script on the UI there isn't an easy way to get the webdriver to pass to script executor.
Would like to suggest to make it easier, or add some script executor capabilities.
With a strong dependency to Guice, I'm not able to get this framework to work integrated into my Spring test project
For those of us using WebDriver for the first time (in a long time), it's really difficult to use cinnamon, due to the lack of JavaDoc on its public API - turning a great idea into a frustrating experience... :(
while executing scripts in Firefox we are displayed with SSL certificate warning and the same in not able to be accepted by passing any parameter as capabilities in the browser profile.
Eg:
firefox {
browserName: "firefox"
driverExtras : {
"webdriver_assume_untrusted_issuer": true
}
}
or
firefox {
acceptSslCerts: true
browserName: "firefox"
}
Can the cucumber jvm version be updated please. The latest version is 4.2
At present to check for elements not being displayed we have to do:
assertTrue(landingPage.cookiesPrompt.is(not(displayed)));
The issue is that this waits for the timeout if the element is not there
would like to do:
assertTrue(landingPage.cookiesPrompt.is(notDisplayed));
This should return immediately if the element is not there and wait for the implicit wait if it is there.
Would like the same for other element conditions e.g. 'present'
Issue xpath nr1. - issue BUG in framework ,
I cannot provide you screneshots , videos , at this point cause I dont want to break Confidentiality Issues on the project.
I will describe the issue ,: it is about xpaths that use word or expresion "contains", this word helps to locate specific text and indicate towards 1 item in the page if there are multiple with same text.
an exemple of such xpath is this one By.xpath: //button[contains(text(),'Skip Part Exchange')]
an below you can see the error . If you want to reproduce this issue on youre machine I sugesst using youre onw xpath and you create one using the same pattern By.xpath: //button[contains(text(),'SomeTextYouChoose')]
org.openqa.selenium.NoSuchElementException: Cannot find element using locator mechanism: By.xpath: //button[contains(text(),'Skip Part Exchange')] and conditions: present
For documentation on this error, please visit: https://www.seleniumhq.org/exceptions/no_such_element.html
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
System info: host: 'LAPTOPARBS700', ip: '10.0.75.1', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_201'
Driver info: driver.version: unknown
at io.magentys.cinnamon.webdriver.elements.WebElementWrapper.lambda$0(WebElementWrapper.java:36)
at java.util.Optional.orElseThrow(Optional.java:290)
at io.magentys.cinnamon.webdriver.elements.WebElementWrapper.getWrappedElement(WebElementWrapper.java:36)
at io.magentys.cinnamon.webdriver.elements.WebElementWrapper.getText(WebElementWrapper.java:93)
at io.magentys.cinnamon.webdriver.elements.PageElementFacade.getText(PageElementFacade.java:74)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at io.magentys.cinnamon.webdriver.support.pagefactory.PageElementInterceptor.intercept(PageElementInterceptor.java:28)
at io.magentys.cinnamon.webdriver.elements.PageElement$$EnhancerByCGLIB$$1c2d059.getText()
at ?.I Get
I have found that configuring a travis-ci is a great way to get CI information from a free 3rd party service. A particularly nice feature is that you can configure travis to build pull requests against your project automatically.
If you would like me to set up a travis build, I could do that and then you could use my configuration as your own if and when you decide to configure a travis build of your own.
So please let me know
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.