All Projects → reportportal → agent-java-cucumber

reportportal / agent-java-cucumber

Licence: Apache-2.0 license
Cucumber JVM version [1.0.0; 2.0.0) adapter

Programming Languages

java
68154 projects - #9 most used programming language
Gherkin
971 projects

Projects that are alternatives of or similar to agent-java-cucumber

AndroidTestingBox
Android project to experiment various testing tools
Stars: ✭ 63 (+200%)
Mutual labels:  cucumber-jvm, cucumber
justtestlah
Dynamic test framework for web and mobile applications
Stars: ✭ 43 (+104.76%)
Mutual labels:  cucumber
SQLServerTools
This repo is the home of various SQL-Server-Tools
Stars: ✭ 28 (+33.33%)
Mutual labels:  agent
cups-rl
Customisable Unified Physical Simulations (CUPS) for Reinforcement Learning. Experiments run on the ai2thor environment (http://ai2thor.allenai.org/) e.g. using A3C, RainbowDQN and A3C_GA (Gated Attention multi-modal fusion) for Task-Oriented Language Grounding (tasks specified by natural language instructions) e.g. "Pick up the Cup or else"
Stars: ✭ 38 (+80.95%)
Mutual labels:  agent
ios-inventory-agent
Flyve MDM Inventory Agent
Stars: ✭ 27 (+28.57%)
Mutual labels:  agent
ios-mdm-agent
Flyve MDM Agent for iOS
Stars: ✭ 21 (+0%)
Mutual labels:  agent
pagent
child process agent by golang
Stars: ✭ 18 (-14.29%)
Mutual labels:  agent
glpi-agent
GLPI Agent
Stars: ✭ 89 (+323.81%)
Mutual labels:  agent
muvio.bundle
A music video extras agent for Plex
Stars: ✭ 14 (-33.33%)
Mutual labels:  agent
codeceptjs-bdd
⭐️ ⭐️⭐️ Migrated to Salesforce Open Source Platform - https://github.com/salesforce/codeceptjs-bdd
Stars: ✭ 24 (+14.29%)
Mutual labels:  cucumber
rl trading
No description or website provided.
Stars: ✭ 14 (-33.33%)
Mutual labels:  agent
OneAgent-SDK-for-dotnet
Enables custom tracing of .NET applications in Dynatrace
Stars: ✭ 14 (-33.33%)
Mutual labels:  agent
docs
Cucumber user documentation
Stars: ✭ 110 (+423.81%)
Mutual labels:  cucumber
loggie
A lightweight, cloud-native data transfer agent and aggregator
Stars: ✭ 844 (+3919.05%)
Mutual labels:  agent
kubernetes
Kubernetes/Helm configs for ReportPortal
Stars: ✭ 66 (+214.29%)
Mutual labels:  reportportal
LogiAM
基于日志模板构建,采集任务动态管控、数据质量精确度量,一站式日志采集平台
Stars: ✭ 199 (+847.62%)
Mutual labels:  agent
DaumMovieTVSeries.bundle
Plex Metadata Agent for daum movie & tv series
Stars: ✭ 38 (+80.95%)
Mutual labels:  agent
e2e-testing
Formal verification of Elastic-Agent and more using BDD
Stars: ✭ 22 (+4.76%)
Mutual labels:  cucumber
OctopusTentacle
| Public | The secure, lightweight, cross-platform agent for Octopus Server which turns any computer into a worker or deployment target for automated deployments and operations runbooks.
Stars: ✭ 25 (+19.05%)
Mutual labels:  agent
CSM.bundle
No description or website provided.
Stars: ✭ 22 (+4.76%)
Mutual labels:  agent

Cucumber Agent for ReportPortal

DISCLAIMER: We use Google Analytics for sending anonymous usage information such as agent's and client's names, and their versions after a successful launch start. This information might help us to improve both ReportPortal backend and client sides. It is used by the ReportPortal team only and is not supposed for sharing with 3rd parties.

Maven Central CI Build codecov Join Slack chat! stackoverflow Build with Love



Compatibility matrix for cucumber agents

Version(s) of cucumber java and cucumber junit Gherkin's version(s) Link to agent's repo Link to agent's github
1.2.5 2.12.2 binaries/cucumber1 sources/cucumber1
2.0.0 - 2.4.0 3.2.0 - 5.1.0 binaries/cucumber2 sources/cucumber2
3.0.0 - 3.0.2 _ binaries/cucumber3 sources/cucumber3
4.4.0 - 4.8.1 3.2.0 - 5.1.0 binaries/cucumber4 sources/cucumber4
5.0.0 - 5.7.0 _ binaries/cucumber5 sources/cucumber5
6.0.0 - 7.0.0 6.0.0 - 7.0.0 binaries/cucumber6 sources/cucumber6

Installation

Add to POM.xml

dependency

<dependency>
  <groupId>com.epam.reportportal</groupId>
  <artifactId>agent-java-cucumber</artifactId>
  <version>5.1.2</version>
</dependency>

Install Reporter

As Cucumber runs your features, it calls out to any number of listener objects to let them know how it’s progressing. These listeners are notified at various points throughout the run of features. This principle is used to notify ReportPortal about your tests progress in real-time. ReportPortal supports two kinds of Reporters. Both of them allow you to report your execution progress to ReportPortal, but there are some differences in report structure.

Scenario Reporter

Step Reporter

Step Reporter propagates the most traditional for ReportPortal test structure keeping your scenarios and steps inside as separate entities. In opposite, Scenario Reporter use scenario as the base point and does not separate step from each other which is sometimes more convenient for BDD users.

Enabling StepReporter:

@RunWith(Cucumber.class)
@CucumberOptions(plugin = {"pretty", "com.epam.reportportal.cucumber.StepReporter"})
public class RunCukesTest {
}

Enabling ScenarioReporter:

@RunWith(Cucumber.class)
@CucumberOptions(plugin = {"pretty", "com.epam.reportportal.cucumber.ScenarioReporter"})
public class RunCukesTest {
}

Configuration

Copy you configuration from UI of Report Portal at User Profile section

or

In order to start using of agent, user should configure property file "reportportal.properties" in such format:

reportportal.properties

rp.endpoint = https://web.demo.reportportal.io
rp.username = default
rp.uuid = 5145b879-83d9-4692-8b07-928cc4b2af7a
rp.launch = default_TEST_EXAMPLE
rp.project = default_project

## OPTIONAL PARAMETERS
rp.tags = TAG1;TAG2
rp.keystore.resource = reportportal-client-v2.jks
rp.keystore.password = reportportal

rp.batch.size.logs = 5

Parameters

User should provide next parameters to agent. These are only examples, for the aclual list of parameters please look into client-java repository.

Parameter Description Required
rp.endpoint URL of web service, where requests should be send Yes
rp.uuid UUID of user. Yes
rp.launch The unique name of Launch (Run). Based on that name a history of runs will be created for particular name Yes
rp.project Project name to identify scope Yes
rp.enable Enable/Disable logging to Report Portal: rp.enable=true - enable log to RP server. Any other value means 'false': rp.enable=false - disable log to RP server. If parameter is absent in properties file then automation project results will be posted on RP. No
rp.tags Set of tags for specifying additional meta information for current launch. Format: tag1;tag2;build:12345-6. Tags should be separated by “;”. There are one special tag- build – it should be used for specification number of build for launch. No
rp.convertimage Colored log images can be converted to grayscale for reducing image size. Values: ‘true’ – will be converted. Any other value means ‘false’. No
rp.mode ReportPortal provides possibility to specify visibility of executing launch. Currently two modes are supported: DEFAULT - all users from project can see this launch; DEBUG - all users except of Customer role can see this launch (in debug sub tab). Note: for all java based clients (TestNG, Junit) mode will be set automatically to "DEFAULT" if it is not specified. No
rp.skipped.issue ReportPortal provides feature to mark skipped tests as not 'To Investigate' items on WS side. Parameter could be equal boolean values: TRUE - skipped tests considered as issues and will be marked as 'To Investigate' on Report Portal. FALSE - skipped tests will not be marked as 'To Investigate' on application. No
rp.batch.size.logs In order to rise up performance and reduce number of requests to server. Default = 10 No
rp.keystore.resource Put your JKS file into resources and specify path to it No
rp.keystore.password Access password for JKS (certificate storage) package, mentioned above No

Launch name can be edited once, and should be edited once, before first execution. As usual, parts of launches are fixed for a long time. Keeping the same name for launch, here we will understand a fixed list of suites under launch, will help to have a history trend, and on UI instances of the same launch will be saved with postfix "#number", like "Test Launch #1", "Test Launch #2" etc.

If mandatory properties are missed client throw exception IllegalArgumentException.

Proxy configuration

The client uses standard java proxy mechanism. If you are new try Java networking and proxies page.

Ways to set up properties:

a. reportportal.properties file b. command line properties (-Dhttps.proxyHost=localhost)

How to provide parameters

There are two way to load parameters.

  • Load from properties file

Properties file should have name: “reportportal.properties”. Properties file can be situated on the class path (in the project directory).

If listener can’t find properties file it throws FileNotFoundException. By default “reportportal.properties” exists in the reportportall-client.jar, but user can create his own “reportportal.properties” file and put in class path.

  • Use system variables

Parameters loading order

Client loads properties in the next order. Every next level overrides previous:

a. Properties file. Client loads all known to him properties (specified in the "Input Parameters" section) from "reportportal.properties" file.

b. Environment variables. If environment variables with names specified in the "Input Parameters" section exist client reload existing properties from environment variables.

c. JVM variables. If JVM variables with names specified in the "Input Parameters" section exist, client overrides existing ones from JVM variables.

Events

  • URI - saves story URI to be sent to ReportPortal afterwards
  • Feature - notifies ReportPortal that some feature has started
  • startOfScenarioLifeCycle - Runs before-* hooks for the scenario
  • scenario - notifies ReportPortal that scenario has been finished
  • Before - used to finish previously started hook
  • step - collects step to be sent to ReportPortal afterwards
  • Examples - generates data being sent to ReportPortal to report examples table
  • background - notifies ReportPortal that before-* hooks have been finished
  • Match - notify ReportPortal that next step of current scenario is started
  • Result - notify ReportPortal that step has finished and after-* hooks should be started (if any)
  • After - notify ReportPortal that after-* hook has finished
  • Embedding/Write - sends log to ReportPortal
  • endOfScenarioLifeCycle - notifies ReportPortal that after-* hooks of scenario has been finished
  • eof - notifies ReportPortal that test feature execution is finished
  • done - IS NOT processed by ReportPortal agent
  • close - notifies ReportPortal that test execution is finished
  • SyntaxError - IS NOT processed by ReportPortal agent
  • ScenarioOutline - IS NOT processed by ReportPortal agent
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].