NoraUi
Non-Regression Automation for User Interfaces
Technical documentation
Public website for NoraUi (Non-Regression Automation for User Interfaces).
News
See change log for details
- 2019-xx-xx: NoraUi [4.0.0] is in progress.
- 2019-xx-xx: NoraUi [3.3.0] is in progress.
- 2018-05-24: NoraUi [3.2.0] is released.
- 2018-03-19: NoraUi [3.1.3] is released.
- 2018-03-14: NoraUi [3.1.2] is released.
- 2018-03-06: NoraUi [3.1.1] is released.
- 2018-03-02: NoraUi [3.1.0] is released.
- 2018-02-05: NoraUi [3.0.2] is released.
- 2017-12-07: NoraUi [3.0.1] is released.
- 2017-11-12: NoraUi [3.0.0] is released.
- 2017-09-21: NoraUi [2.6.3] is prohibited.
How to migrate from [3.x.x] to [4.x.x]
- You can use all new features from cucumber v4.x.x. (Use Cucumber Expressions)
- You need use Cucumber Expressions instead of regular expressions
- You need use java 8 instead of java 7.
How to migrate from [2.x.x] to [3.x.x] (mandatory)
- -Dcucumber.options="--tags '@tag1 or @tag2 or @tag3 or @tag4'"
- NoraUi use Oracle Jdbc Driver
- if you use Oracle Db provider, use com.oracle.jdbc:ojdbc8 dependency and configure your env with OTN: Sample(https://github.com/sgrillon14/MavenSampleOracleJdbc) (default)
- if you do not use Oracle Db provider, just exclude com.oracle.jdbc:ojdbc8 dependency in the noraui dependency call within your pom.xml. You can follow these instructions at https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html. It should look something like that :
<dependency>
<groupId>com.github.noraui</groupId>
<artifactId>noraui</artifactId>
<version>${noraui.version}</version>
<exclusions>
<exclusion>
<groupId>com.oracle.jdbc</groupId>
<artifactId>ojdbc8</artifactId>
</exclusion>
</exclusions>
</dependency>
- Change all "noraui" import to "com.github.noraui"
- Change all
private static Logger logger = Logger.getLogger
byprivate static final Logger logger = LoggerFactory.getLogger
- Change all
import org.apache.log4j.Logger;
byimport org.slf4j.Logger;
andimport org.slf4j.LoggerFactory;
- Change com.github.noraui.browser.DriverFactory#setProperty(String key, Properties propertyFile) to com.github.noraui.browser.DriverFactory#getProperty(String key, Properties propertyFile)
- Change com.github.noraui.browser.DriverFactory#setIntProperty(String key, Properties propertyFile) to com.github.noraui.browser.DriverFactory#getIntProperty(String key, Properties propertyFile)
- replace all step constructors by
com.google.inject.Inject
(inject pages) - replace loadAuthentication(String browser) by loadAuthentication(Cookie cookie)
- replace PhantomJs by Chrome headless
- replace springframework RestTemplate by OkHttp
Supported languages
These are the currently supported languages
- English
- French
Does NoraUi not support your language? Please help us with a PR!
Continuous Integration status
Contributors
Gitter chat
How to use
Stable:
SNAPSHOT:
<dependency>
<groupId>com.github.noraui</groupId>
<artifactId>noraui</artifactId>
<version>3.3.0-SNAPSHOT</version>
</dependency>
<repository>
<id>sonatype-snapshots</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</repository>
Technology
- Gherkin
- Cucumber
- Selenium
- Webdriver
- Java 8
- Maven
- Google guice
- JUnit / Mockito / Cucumber
Run Anywhere
License
/!\ CAUTION: NoraUi V2.x.x is prohibited.
These versions use the following dependency whose copyrights are not respected.
<GroupId>com.github.noraui</groupId>
<ArtifactId>cucumber-metrics</artifactId>
This dependency comes from a Pull Request (Cucumber-JVM: Metrics) proposal by sgrillon14 to open source library "Cucumber-JVM". Nobody has permission to copy this code let alone claim to be creator of it. This was noted in the README.md of the GitHub repository. This part has been officially integrated into NoraUi in V3.x.x which has an AGPL license.
These versions use the following dependency whose copyrights are not respected.
<GroupId>com.github.noraui</groupId>
<ArtifactId>ojdbc7</artifactId>
The NoraUi project had the temporary authorization of sonatype to publish this version. This was temporary because Oracle finally did not agree. Oracle has declined NoraUi's proposal and the deposit is now removed. The use by the NoraUi team was tolerated until the end of 2017 (It was noted in the README.md of the GitHub repository.) But is now forbidden for all.
Contributing
The issue tracker is the preferred channel for bug reports, features requests and submitting pull requests.
For pull requests, read CONTRIBUTING before.
- Step 1: Create a fork.
- Step 2: Create a branch on this new fork.
- Step 3: Sync your travis-ci account and guithub account.
- Step 4: Flick the repository switch on.
- Step 5: Add OTN login/password in Travis-ci environnement.
- Step 6: Valid if Travis status is OK.
- Step 7: Create pull request.