Ошибка в файле XML testng при запуске тестового набора в наборе - PullRequest
1 голос
/ 26 февраля 2020

Я пытаюсь запустить файл testng xml в комплекте. Но когда я запускаю файл
как запуск в качестве пакета testng, я получаю сообщение об ошибке ниже в консоли

org.testng.TestNGException: org.xml.sax.SAXParseException; lineNumber: 37; columnNumber: 9; The content of element type "suite" must match "(groups?,(listeners|packages|test|parameter|method-selectors|suite-files)*)".
at org.testng.TestNG.parseSuite(TestNG.java:327)
at org.testng.TestNG.initializeSuitesAndJarFile(TestNG.java:348)
at org.testng.TestNG.initializeEverything(TestNG.java:995)
at org.testng.remote.support.RemoteTestNG6_12.initialize(RemoteTestNG6_12.java:22)
at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:97)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)

Причина: . орг xml .sax.SAXParseException; номер строки: 37; номер столбца: 9; Содержимое элемента типа "suite" должно соответствовать "(groups?, (Listeners | packages | test | parameter | method-selectors | suite-files) *)". на com.sun.org. apache .xerces.internal.util.ErrorHandlerWrapper.createSAXParseException (ErrorHandlerWrapper. java: 203) на com.sun.org. apache .xerces.internal.util.ErrorHandlerWrapper.error ( ErrorHandlerWrapper. java: 134) на com.sun.org. apache .xerces.internal.impl.XMLErrorReporter.reportError (XMLErrorReporter. java: 396) на com.sun.org. apache .xerces. internal.impl.XMLErrorReporter.reportError (XMLErrorReporter. java: 327) на com.sun.org. apache .xerces.internal.impl.XMLErrorReporter.reportError (XMLErrorReporter. java: 284) в com.sun. org. apache .xerces.internal.impl.dtd.XMLDTDValidator.handleEndElement (XMLDTDValidator. java: 1994) на com.sun.org. apache .xerces.internal.impl.dtd.XMLDTDValidator.endElement ( . java: 879) на com.sun.org. apache .xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement (XMLDocumentFragmentScannerImpl. java: 1783) на com.sun.org. apache .xerces.internal .impl.XMLDocumentFragmentScannerImpl $ FragmentContentDriver.next (XMLDocumentFragmentScannerImpl. java: 2970) на com.sun.org. apache .xerces.internal.impl.XMLDocumentScannerImpl.next (XMLDocumentScannerImpl. java: 606) на com.sun.org. apache .xerces.internal.impl .XMLNSDocumentScannerImpl.next (XMLNSDocumentScannerImpl. java: 118) на com.sun.org. apache .xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument (XMLDocumentFragmentScannerImpun. 5) * 10. * 10 *. 1036 * .xerces.internal.parsers.XML11Configuration.parse (XML11Configuration. java: 848) на com.sun.org. apache .xerces.internal.parsers.XML11Configuration.parse (XML11Configuration. java: 777) на com.sun.org. apache .xerces.internal.parsers.XMLParser.parse (XMLParser. java: 141) на com.sun.org. apache .xerces.internal.parsers.AbstractSAXParser.parse ( AbstractSAXParser. java: 1213) на com.sun.org. apache .xerces.internal.jaxp.SAXParserImpl $ JAXPSAXParser.parse (SAXParserImpl. java: 643) на com.sun.org. apache. xerces.internal.jaxp.SAXParserImpl.parse (SAXParserImpl. java: 327) в javax. xml .parsers.SAXParser.parse (SAXParser. java: 195) в org.testng. xml .XMLParser.parse (XMLParser. java: 38) в org.testng. xml .SuiteXmlParser.parse (SuiteXmlParser. java: 16) в org.testng. xml .SuiteXmlParser.parse (SuiteXmlParser. java: 9) в org.testng. xml .Parser.parse (Parser. java: 152) в org.testng. xml .Parser.parse (Parser. java: 233) at org.testng.TestNG.parseSuite (TestNG. java: 295) ... еще 6

Поскольку я новичок в тестировании автоматизации, я не могу выяснить, почему проблема возникла. Я проверил все синтаксические ошибки, и я чувствую, что это
правильно. Но я не могу решить эту проблему. Это мой xml файл, который я пытаюсь запустить, но получаю ошибку

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
    <suite name="Merck Production Smoke Test Automation Test Suite">
    <parameter name="appURL" value="https://webqws.sial.com"/>
    <parameter name="browserType" value="chrome"/>   
    <listeners>
    <listener class-name="customListener.TestNGCustomReportListener"> 
    </listener>
    <listener class-name="customListener.Customreporter"/>
    </listeners>
    <!--  --> <test name="Merck Production Suite - Automation Scripts 
    Execution - US">
    <parameter name="countryName" value="United States"/>      
    <classes>
    <class name="testScript.Merck_Web_eCommerce_SmokeTest"/>   
    </classes>    
    </test> -->    
    <test name="Merck Production Suite - Automation Scripts Execution - UK">    
    <parameter name="countryName" value="United Kingdom"/>    
    <classes>    
    <class name="testScript.Merck_Web_eCommerce_SmokeTest"/>    
    </classes>     
    </test>    
    <!-- <test name="Merck Production Suite - Automation Scripts Execution - 
   INDIA">
   <parameter name="countryName" value="India"/>   
   <classes>
   <class name="testScript.Merck_Web_eCommerce_SmokeTest"/>
   </classes>   
   </test>  -->    
   </suite>

1 Ответ

0 голосов
/ 26 февраля 2020

(наиболее вероятный) Причины проблемы:

  1. Непревзойденное закрытие --> в файле xml.

    Решение: удалите его.

  2. (После исправления 1. у меня все еще было :) «недействительное DTD» (!), Как здесь .

    Решение: используйте http s !;) (в <!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd" >)

...