我有一个开发的Webdriver测试,它们定期运行并且成功运行但是已经更改了项目,因此自2013年4月起停止运行它们。 我可以在Java-Eclipse中从TestNg运行它们,也可以使用Gradle构建它们。
当我尝试立即运行脚本时(使用Chrome或任何其他浏览器。),会导致以下错误: -
@Test在方法addFields上需要参数'BROWSER',但尚未标记为@Optional或已定义 在C:\ Users \ li010ca \ AppData \ Local \ Temp \ testng-eclipse - 942362152 \ testng-customsuite.xml]]>
MY TESTNG.xml如下所示: -
<
!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="webDriver">
<test name="UI Test with Google Chrome" preserve-order="true">
<parameter name="BROWSER" value="CH"></parameter>
<classes>
<class name="com.pb.selenium.spider.testScripts.MyProj"></class>
<!--<class name="com.pb.selenium.spider.testScripts.DemoTest"></class>-->
</classes>
</test>
<test name="UI Test With FF" preserve-order="true">
<parameter name="BROWSER" value="FF"></parameter>
<classes>
</classes>
</test>
<test name="UI Test with IE" preserve-order="true">
<parameter name="BROWSER" value="IE"></parameter>
<classes>
</classes>
</test>
<test name="UI Test with Opera" preserve-order="true">
<parameter name="BROWSER" value="OPERA"></parameter>
<classes>
</classes>
</test>
</suite>
我已更新使用最新的Chromedriver。最近是否有其他可能导致此问题的变化?请有人帮忙吗? 谢谢你提前帮忙。
答案 0 :(得分:2)
当您使用eclipse作为单个测试触发时,testng套件级别参数仅用于创建自定义testng套件。因此,您需要在测试标记之外声明参数。否则,您需要通过右键单击xml文件然后单击run as testng suite来运行。