当前位置: 首页 > 知识库问答 >
问题:

TestNG参数丢失错误

翟英达
2023-03-14

我有以下问题,当我运行testng套件时,我得到以下错误:

“参数'paramName'是@test on method testMethod所必需的,但尚未标记为@OPtional o或已定义”。这里的所有问题都是正确的,这是我试图执行的代码的一部分:

  <test name = "Test name">
    <parameter name="model" value="bank"/>
    <parameter name="module" value="buyer"/>
    <parameter name="testName" value="testname" />
    <classes>           
        <class name="com.company.test.cases.example">
            <methods>
                <include name = "testMethod">
                    <parameter name="testLinkName" value="NAme on testlink to report to."/>
                </include>
            </methods>
        </class>
    </classes>
</test> 


@Parameters({"model", "module", "testName", "testLinkName"})
@Test
public void testMethod(String model, String module, String testName, String testLinkName) throws Exception {
    homePage = new HomePage(getDriver());
    homePage.navigateToBank();
    securityPage = new BankSecurity(this);
    securityPage.validateBankUI();
    assertTest(securityPage);
}

如果此测试是,则扩展自基本测试,该测试在测试之前调用了以下方法

   @Parameters({"model", "module", "testName", "testLinkName"})
@BeforeMethod
public void beforeTest(String model, String module, String testName, String testLinkName)
{
    this.subModel=model;
    this.moduleName = module;
    this.testName = testName;
    this.testLinkName = testLinkName;
}

我不包括驱动程序被实例化的情况。如果有人知道会发生什么的话。

共有1个答案

郑星辰
2023-03-14

我成功地访问了参数。尝试在methods标记中将参数移出。

<test name="OfferTests" >
    <parameter name="and" value="1"></parameter>
    <classes>
       <class name="com.nv.tests" >
        <methods>
            <parameter name="abc" value="def"></parameter>
            <include name="test1"></include>
        </methods>
       </class> 
    </classes>
  </test>

测试方法是

@Parameters({"and","abc"})
    @Test
    public void test1(String b, String a){
        System.out.println(b+a);
    }
 类似资料:
  • 问题内容: 我正在编辑搜索表单,并尝试防止数据库中的特殊字符。在JSP搜索表单中,(多重选择)下拉列表允许用户选择将在查询中使用的描述(注意:description是字符串列表): 提交表单时,页面会动态生成URL,该URL在URL中使用查询参数(丑陋,我知道,双手被绑住了)。这是描述段的摘要。 我在数据库中有一个测试条目,其描述是: AAA`〜!@#$%^&*()_ +-= {} | [] \:

  • 我正试图使用rpm maven插件,但我得到以下错误: 这是我的pom:

  • 我正在尝试从macos上使用swift开发的应用程序连接到realm object server 当我尝试连接时,会出现“网络连接丢失”错误,但我可以从浏览器中毫无问题地打开领域服务器。。顺便说一句,这个问题最近发生了,它在几周前工作正常 这里,用户总是,错误描述是 这发生在本地服务器和一个托管在数字海洋 服务器版本1.8。3. xcode控制台日志 2018-01-15 12:46:07.077

  • 问题内容: 我的结构相当复杂,无法正常工作。这是我所做的: 目的是根据枚举来概括调用,而只是能够迭代枚举数组。 这工作正常且花花公子。但是,如果我说 那么它是一个而不是一个。该方法返回,但最终它变为和。 我究竟做错了什么? 如何保留通用参数类型? 我想补充一点,我确实意识到问题出在未经检查的转换中。但是服务定义为 而且我不知道为什么不能推断类型。 编辑 :从技术上讲,如果我明确推断出它们,则可以使

  • 主要内容:1. 使用XML传递参数,2. 通过@DataProvider传递参数,3. @DataProvider + 方法,4. @DataProvider + ITestContextTestNG中的另一个有趣的功能是参数化测试。 在大多数情况下,您会遇到业务逻辑需要大量测试的场景。 参数化测试允许开发人员使用不同的值一次又一次地运行相同的测试。 TestNG可以通过两种不同的方式将参数直接传递给测试方法: 使用 使用数据提供者 在本教程中,我们将向您展示如何通过XML 或将参数传递给方法。

  • 我正在使用DSS签署Pdf文档。我需要这些文档有时间戳并启用LTV(启用PAdES LTV)。 我遇到了一些关于撤销数据的问题。 我对这个领域有点陌生,所以请容忍我。 我按照DSS本身提供的说明和演示进行操作,但没有效果。 我已经成功地使用PAdES B和PAdES T签署了Pdf,所以我的TSA服务设置正确。 我遇到的问题是,每次我尝试使用LTV签署Pdf时,都会出现以下错误:“eu.europ