Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I'm using testng maven and selenium to run my tests, currently I have the following testng.xml file

Looks like the problem is with the &listeners and &classes lines, If I replace those lines with the xml content that I have on the referenced files it runs fine. I have used this in a previous project and it worked fine, not sure why I'm getting this error.

<?xml version = "1.0" encoding = "UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"   [
        <!ENTITY listeners SYSTEM "listeners.xml">
        <!ENTITY classes SYSTEM "classes.xml">
        ]>

<suite name="Local Execution" verbose="5">
    &listeners;
    <test name="Core Integration Tests" time-out="800000">
        <groups>
            <run>
                <include name="failed"/>
            </run>
        </groups>
        &classes;
    </test>
</suite>

Listener.xml content is like

<listeners>
    <listener class-name="com.myclass.Listeners.TestListener"/>
</listeners>

And classes file is

<classes>
    <class name="com.orders.tc_class1"/>
    <class name="com.orders.tc_class2"/>
</classes>

This is part of the error I'm getting

org.testng.TestNGException: 
TestNG by default disables loading DTD from unsecure Urls. If you need to explicitly load the DTD from a http url, please do so by using the JVM argument [-Dtestng.dtd.http=true]
    at org.testng.xml.TestNGContentHandler.resolveEntity(TestNGContentHandler.java:102)
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
383 views
Welcome To Ask or Share your Answers For Others

1 Answer

Yes, that's the default behavior of TestNG and I had introduced it through that pull request to fix the bug https://github.com/cbeust/testng/issues/2022

To set the JVM arguments in intelliJ, choose Run > Edit Configurations, and add this JVM argument in the VM options section after -ea (which would be there by default.

For more information on editing configurations, please refer to the official documentation here

Added screenshot for easy to find in Intellij

Argument value

-ea -Dtestng.dtd.http=true

enter image description here

If the above does not work do at template level, this will fix it, which is

Run--> Edit configuration --> template --> testng

enter image description here


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...