FINERACT-2070: Integrate the new test framework into the public build pipeline
This commit is contained in:
committed by
Arnold Gálovics
parent
0641fc6b99
commit
014144f614
@@ -0,0 +1,91 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
plugins {
|
||||
id 'se.thinkcode.cucumber-runner' version '0.0.11'
|
||||
id 'io.qameta.allure' version '2.11.2'
|
||||
}
|
||||
|
||||
apply plugin: 'java'
|
||||
apply plugin: 'eclipse'
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
dependencies {
|
||||
testImplementation(project(':fineract-avro-schemas'))
|
||||
testImplementation(project(':fineract-client'))
|
||||
testImplementation(project(':fineract-e2e-tests-core').sourceSets.test.output)
|
||||
|
||||
testImplementation 'org.springframework:spring-context'
|
||||
implementation 'org.springframework:spring-test'
|
||||
testImplementation 'org.springframework:spring-jms'
|
||||
|
||||
testImplementation 'com.squareup.retrofit2:retrofit:2.9.0'
|
||||
testImplementation 'commons-httpclient:commons-httpclient:3.1'
|
||||
testImplementation 'org.apache.commons:commons-lang3:3.14.0'
|
||||
testImplementation 'com.googlecode.json-simple:json-simple:1.1.1'
|
||||
testImplementation 'com.google.code.gson:gson:2.10.1'
|
||||
|
||||
testImplementation 'io.cucumber:cucumber-java:7.15.0'
|
||||
testImplementation 'io.cucumber:cucumber-junit:7.15.0'
|
||||
testImplementation 'io.cucumber:cucumber-spring:7.15.0'
|
||||
|
||||
testImplementation 'io.qameta.allure:allure-cucumber7-jvm:2.25.0'
|
||||
|
||||
testImplementation 'org.assertj:assertj-core:3.25.3'
|
||||
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.10.2'
|
||||
testImplementation 'org.junit.jupiter:junit-jupiter:5.10.2'
|
||||
|
||||
testCompileOnly 'org.projectlombok:lombok:1.18.30'
|
||||
testAnnotationProcessor 'org.projectlombok:lombok:1.18.30'
|
||||
|
||||
testImplementation "ch.qos.logback:logback-core:1.5.3"
|
||||
testImplementation "ch.qos.logback:logback-classic:1.5.3"
|
||||
|
||||
testImplementation 'org.apache.activemq:activemq-client:6.0.1'
|
||||
testImplementation "org.apache.avro:avro:1.11.3"
|
||||
testImplementation "org.awaitility:awaitility:4.2.0"
|
||||
testImplementation 'io.github.classgraph:classgraph:4.8.168'
|
||||
|
||||
testImplementation 'org.apache.commons:commons-collections4:4.4'
|
||||
}
|
||||
|
||||
tasks.named('test') {
|
||||
useJUnitPlatform()
|
||||
}
|
||||
|
||||
tasks.named('cucumber').get().finalizedBy 'allureReport'
|
||||
|
||||
tasks.named('cucumber').get().dependsOn 'spotlessCheck'
|
||||
|
||||
cucumber {
|
||||
tags = 'not @ignore'
|
||||
main = 'io.cucumber.core.cli.Main'
|
||||
shorten = 'argfile'
|
||||
plugin = [
|
||||
'pretty',
|
||||
'io.qameta.allure.cucumber7jvm.AllureCucumber7Jvm'
|
||||
]
|
||||
}
|
||||
|
||||
allure {
|
||||
version = '2.17.3'
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
package org.apache.fineract.test;
|
||||
|
||||
import io.cucumber.junit.Cucumber;
|
||||
import io.cucumber.junit.CucumberOptions;
|
||||
import org.junit.runner.RunWith;
|
||||
|
||||
@RunWith(Cucumber.class)
|
||||
@CucumberOptions(features = "src/test/resources/features", glue = { "org.apache.fineract.test.stepdef",
|
||||
"org.apache.fineract.test.stepdef.common", "org.apache.fineract.test.stepdef.hook", "org.apache.fineract.test.stepdef.loan",
|
||||
"org.apache.fineract.test.stepdef.saving", "org.apache.fineract.test.config" })
|
||||
public class TestRunner {}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
package org.apache.fineract.test.config;
|
||||
|
||||
import io.cucumber.spring.CucumberContextConfiguration;
|
||||
import org.springframework.test.context.ContextConfiguration;
|
||||
|
||||
@CucumberContextConfiguration
|
||||
@ContextConfiguration(classes = TestApplicationConfiguration.class)
|
||||
public class TestCucumberConfiguration {}
|
||||
@@ -0,0 +1,2 @@
|
||||
org.apache.fineract.test.initializer.Configuration=org.apache.fineract.test.initializer.FineractInitializerConfiguration,\
|
||||
org.apache.fineract.test.initializer.base.BaseFineractInitializerConfiguration
|
||||
@@ -0,0 +1,20 @@
|
||||
#
|
||||
# Licensed to the Apache Software Foundation (ASF) under one
|
||||
# or more contributor license agreements. See the NOTICE file
|
||||
# distributed with this work for additional information
|
||||
# regarding copyright ownership. The ASF licenses this file
|
||||
# to you under the Apache License, Version 2.0 (the
|
||||
# "License"); you may not use this file except in compliance
|
||||
# with the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing,
|
||||
# software distributed under the License is distributed on an
|
||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
# KIND, either express or implied. See the License for the
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
#
|
||||
|
||||
allure.results.directory=fineract-e2e-tests/fineract-e2e-tests-runner/build/allure-results
|
||||
@@ -0,0 +1,20 @@
|
||||
#
|
||||
# Licensed to the Apache Software Foundation (ASF) under one
|
||||
# or more contributor license agreements. See the NOTICE file
|
||||
# distributed with this work for additional information
|
||||
# regarding copyright ownership. The ASF licenses this file
|
||||
# to you under the Apache License, Version 2.0 (the
|
||||
# "License"); you may not use this file except in compliance
|
||||
# with the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing,
|
||||
# software distributed under the License is distributed on an
|
||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
# KIND, either express or implied. See the License for the
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
#
|
||||
|
||||
cucumber.publish.quiet=true
|
||||
@@ -0,0 +1,29 @@
|
||||
#
|
||||
# Licensed to the Apache Software Foundation (ASF) under one
|
||||
# or more contributor license agreements. See the NOTICE file
|
||||
# distributed with this work for additional information
|
||||
# regarding copyright ownership. The ASF licenses this file
|
||||
# to you under the Apache License, Version 2.0 (the
|
||||
# "License"); you may not use this file except in compliance
|
||||
# with the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing,
|
||||
# software distributed under the License is distributed on an
|
||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
# KIND, either express or implied. See the License for the
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
#
|
||||
|
||||
@ClientFeature
|
||||
Feature: Client
|
||||
|
||||
@TestRailId:C14 @Smoke
|
||||
Scenario Outline: Client creation functionality for Fineract
|
||||
When Admin creates a client with Firstname <firstName> and Lastname <lastName>
|
||||
Then Client is created successfully
|
||||
Examples:
|
||||
| firstName | lastName |
|
||||
| "FirstName1" | "Test1" |
|
||||
@@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
|
||||
-->
|
||||
<configuration>
|
||||
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
|
||||
<encoder>
|
||||
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<logger name="org.apache.fineract.test.messaging.store.EventStore" level="DEBUG" />
|
||||
<logger name="org.springframework" level="WARN" />
|
||||
|
||||
<root level="INFO" >
|
||||
<appender-ref ref="STDOUT"/>
|
||||
</root>
|
||||
</configuration>
|
||||
Reference in New Issue
Block a user