2017-09-29 49 views
-1

我跑硒腳本使用TestNG XML,但是到現在爲止,一切工作,但現在它總是拋出錯誤,但是當我刪除第一行,它正在與警告TestNG的XML DTD錯誤

TestNG的XML文件,如下

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" > 
<suite name="Zero Bank" verbose="1" > 
<test name="Zero_Banking"> 
<listeners> 
     <listener class-name="com.zero.utility.Listners"/>  
    </listeners> 
<classes> 
<class name = "com.zero.utility.Constants"/> 
<class name = "com.zero.modules.LaunchApp"/> 
<class name = "com.zero.modules.WhileTrue"/> 
</classes> 
</test> 
</suite> 

和錯誤時,拋出是

Exception in thread "main" org.testng.TestNGException: org.xml.sax.SAXParseException; lineNumber: 21; columnNumber: 8; The content of element type "test" must match "(method-selectors?,parameter*,groups?,packages?,classes?)". 
    at org.testng.TestNG.initializeSuitesAndJarFile(TestNG.java:324) 
    at org.testng.TestNG.run(TestNG.java:1101) 
    at com.zero.modules.Startup.main(Startup.java:18) 
Caused by: org.xml.sax.SAXParseException; lineNumber: 21; columnNumber: 8; The content of element type "test" must match "(method-selectors?,parameter*,groups?,packages?,classes?)". 
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source) 
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleEndElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.endElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(Unknown Source) 
    at javax.xml.parsers.SAXParser.parse(Unknown Source) 
    at org.testng.xml.XMLParser.parse(XMLParser.java:39) 
    at org.testng.xml.SuiteXmlParser.parse(SuiteXmlParser.java:16) 
    at org.testng.xml.SuiteXmlParser.parse(SuiteXmlParser.java:9) 
    at org.testng.xml.Parser.parse(Parser.java:170) 
    at org.testng.TestNG.initializeSuitesAndJarFile(TestNG.java:304) 
    ... 2 more 
+0

對於未來的程序員嘗試寫有用的錯誤消息的份上,你可以解釋如何在消息'元素類型「test''」的內容必須匹配「'(方法 - 選擇器?,參數*,組?,包?,類?)「'設法無法引起您對'test'元素內容的注意,並且無法檢查其子序列是否與模式匹配? –

回答

1

您的套件xml文件格式不正確。 <listeners>標籤不應包含在<test>標籤中。

這裏是正確的XML

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" > 
<suite name="Zero Bank" verbose="1"> 
    <listeners> 
     <listener class-name="com.zero.utility.Listners"/> 
    </listeners> 

    <test name="Zero_Banking"> 
     <classes> 
      <class name="com.zero.utility.Constants"/> 
      <class name="com.zero.modules.LaunchApp"/> 
      <class name="com.zero.modules.WhileTrue"/> 
     </classes> 
    </test> 
</suite>