Reputation: 857
I wish to have test level parameters in my testng.xml and below is the code present in my testng.xml file:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="My Test Suite" verbose="1">
<parameter name="param1" value="value1" />
<parameter name="param2" value="value2" />
<listeners>
<listener class-name="TestListener" />
</listeners>
<test name="Test1">
<parameter name="param" value="value" />
<classes>
<class name="ClassContainingTest1" />
<methods>
<include name="test1" />
</methods>
</classes>
</test>
<test name="Test2">
<parameter name="param" value="value" />
<classes>
<class name="ClassContainingTest2" />
<methods>
<include name="test2" />
</methods>
</classes>
</test>
</suite>
But the XML editor highlights the classes
tag in red. It seems something is wrong with my XML structure, but I'm unable to figure out the same.
Please help.
Upvotes: 0
Views: 4061
Reputation: 857
The issue was with the methods
tag not being inside the class
tag.
Revising the XML code to below fixed the issue:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="My Test Suite" verbose="1">
<parameter name="param1" value="value1" />
<parameter name="param2" value="value2" />
<listeners>
<listener class-name="TestListener" />
</listeners>
<test name="Test1">
<parameter name="param" value="value" />
<classes>
<class name="ClassContainingTest1">
<methods>
<include name="test1" />
</methods>
</class>
</classes>
</test>
<test name="Test2">
<parameter name="param" value="value" />
<classes>
<class name="ClassContainingTest2">
<methods>
<include name="test2" />
</methods>
</class>
</classes>
</test>
</suite>
Upvotes: 1