我想对TestNG使用参数化测试。 我用参数(par.xml)创建了xml文件。参数用于registration.java中包含的方法。
只能通过以下方式执行:par.xml - >以 - >运行TestNG的?如果我尝试按类运行,我会收到错误:
org.testng.TestNGException: @Test在方法testRejestracja上需要参数'userEmail',但尚未标记为@Optional或已定义 在C:\ Users \ Sonia \ AppData \ Local \ Temp \ testng-eclipse - 2102596193 \ testng-customsuite.xml
是否可以避免测试失败?我想运行所有java类来同时完成所有测试。
答案 0 :(得分:2)
当您使用@Test
注释对@Parameters
方法进行注释时,您基本上告诉TestNG可以从@Test
标记中找到<parameters>
方法的参数。 TestNG套件xml文件。
但是当你尝试直接运行一个类(通过你最喜欢的IDE或通过构建工具)时,没有套件xml文件,因此TestNG不知道提供什么作为{{1}的参数的值方法。
所以你需要坚持运行这些方法 ONLY 通过TestNG套件xml文件(或)使用@Test
注释告诉TestNG,因为它找不到任何值从@Optional
标记注入,它应该只注入<parameters>
值。