我试图执行一个testNg.xml测试套件,然后通过maven执行一个cucumber测试运行类,而不是触发测试。如果我直接从intelliJ执行testNG. xml,它就可以工作。如果我执行功能文件或testRunner,它的工作原理。
我的测试。xml文件-sanityTestSuite。xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="My UI Sanity Test Features">
<test verbose="2" preserve-order="true" name="Sanity tests">
<classes>
<class name="com.runner.SanityTestRunner">
<!-- <methods><include name="test1"/></methods> -->
</class>
</classes>
</test>
</suite>
我的TestRunner文件-SanityTestRunner
package com.runner;
import io.cucumber.testng.AbstractTestNGCucumberTests;
import io.cucumber.testng.CucumberOptions;
@CucumberOptions
(
features = {"src\\test\\java\\com\\features"},
//features = {"src\\test\\java\\com\\features\\LoginTest.feature"},
glue = {"com.stepDef"},
dryRun = false, strict = true, monochrome = true,
//Report generator.
plugin = { "pretty", "com.aventstack.extentreports.cucumber.adapter.ExtentCucumberAdapter:"},
//Below statement can be used to tag the features that needs to be executed.
tags = "@Sanity"
//Below statement can be used to tag the features that NOT be executed.
//tags = {"~@SanityTest"}
)
public class SanityTestRunner extends AbstractTestNGCucumberTests { }
我的功能文件-LoginTest.feature
@UITests
Feature: Verify basic user functionalities of the amazon portal
Background:
Given user opens the url in the browser
@Sanity
@userSignInToAmazonPortal
Scenario Outline: Launch Amazon portal and sign in as admin user.
Then user validates the loaded home page title as <homePageTitle>
And user selects Sign In button
And user validates the loaded sign in page title as <signInPageTitle>
And user enters the credentials for <userType> user
Then user Sign in must be successful
Examples:
| userType |homePageTitle |signInPageTitle |
| admin |Online Shopping site |Amazon Sign In |
我用过的命令-mvn test-Dcucumber.options="src/test/java/com/特性/LoginTest.feature"-Dcucumber.filter.tags="@烟雾"-D环境=qa
mvn测试-Dcucumber。options=“src/test/java/com/suite/sanityTestSuite.xml”-Dcucumber。滤器tags=“@Sanity”-Denvironment=qa
mvn测试-Dcucumber。options=“--tags@userSignInToAmazonPortal”
以下代码在我的pom.xml文件中被禁用-
<suiteXmlFiles>
<!--suppress UnresolvedMavenProperty -->
<suiteXmlFile>${suiteXmlFile}</suiteXmlFile>
</suiteXmlFiles>
上面的依赖关系使我能够执行testNG。xml文件通过命令-mvn clean test-DsuiteXmlFile=src/test/java/com/suite/sanityTestSuite。xml-Denvironment=uat
,但是此命令不起作用-mvn test-Dcucumber。options=“src/test/java/com/suite/sanityTestSuite.xml”
-Dcucumber。滤器tags=“@Sanity”-Denvironment=qa
问题内容: 我有 而不是一个一个地执行每个功能,如下所示: 是否有内置的方法可以按类中的顺序遍历并执行每个函数? 问题答案: 不能。您可以访问,并依次调用每个值(对于不可调用的成员会捕获错误),但是顺序不会保留。 像您的示例一样,假设所有函数都没有参数。
TestNG Runner类执行多个功能文件? 我知道我们可以创建一个可以针对多个TestNG测试类的TestNG xml,但是我们可以创建一个可以针对多个Cucumber/ Junit特性文件的TestNG.xml吗?
我正在尝试创建maven项目的可执行jar文件。 下面是我的pom.xml 下面是最后一个命令的控制台输出。
问题内容: 从数据库表和solr中读取数据后,我编写了一个脚本来更新数据库表。我正在使用asyn.waterfall模块。问题在于,成功完成所有操作后,脚本不会退出。我使用过的数据库连接池也认为可能正在创建脚本以无限期等待。我想将此脚本放在crontab中,如果无法正确退出,它将不必要地创建大量实例。 问题答案: 我刚刚经历了这个问题。 仅仅使用的问题是我正在处理的程序正在创建句柄,但从未销毁它们
Jenkins不熟悉,所以我有一个java web项目(maven)和一个单元测试文件。测试文件结构:src/test/Java/preprocessortest . Java 该测试在intellij中成功执行。但是Jenkins并不认为这个测试文件是成功的。 它显示“没有要运行的测试” Jenkins控制台日志 pom.xml (编辑)当我使用cmd作为“mvn test”在pc中进行mave