第三章 通过testng.xml调用TestNG

1. 什么是DTD?

  在创建testng.xml文件时,需要通过<!DOCTYPE>标签将引入DTD约束文件,在具体使用testng.xml之前,我们可以先了解一下什么是DTD。
testng.xml示例
  DTD(Document Type Definition)用来定义XML文档的结构、校验合法的元素和属性,借助DTD相关人员、程序可以验证XML内容的是否符合既定的格式。
下面我们通过IDE尝试一下下面的这个例子:

note.dtd

<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
<!--
上面写了一堆啥玩意儿,来,我们解释一下:
<!ELEMENT note (to,from,heading,body)>:用ELEMENT标签来声明元素note,即xml中可以使用<note></note>标签,
后面小括号中的内容"(to,from,heading,body)"则是定义了<note>中可以出现的子元素。
再往后看
<!ELEMENT to (#PCDATA)>
它表示在<to>和</to>标签之间可以插入字符,如存在 '&', '<', '>'这些符号需要使用转义后的符号
那么,根据这样一份DTD的描述,我们的xml应该是这样的:
-->
<note>
	<to>Tove</to>
	<from>Jani</from>
	<heading>Reminder</heading>
	<body>Don't forget me this weekend!</body>
</note>
<!--
相关的工具、IDE能够依据DTD文档对xml文件的内容进行提示和验证。
-->

demodtd

上面是关于DTD的简单说明和示例,想要深入了解的同学可以参考一下链接:w3schools

2. testng.xml示例

通过方法名指定要运行的测试

<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd" >
<suite name="Suite1" verbose="1">
    <test name="Test1" preserve-order="false">
        <classes>
            <class name="cn.chenf24k.tester.xml.xmlmethod.TestNGXmlMethod">
                <methods>
                    <include name="m1" />
                    <include name="m2" />
                </methods>
            </class>
        </classes>
    </test>
</suite>

通过类名指定要运行的测试

<suite name="Suite1" verbose="1" >
    <test name="Test2" >
        <classes>
            <class name="cn.chenf24k.tester.testngxml.TestNGXmlTest1" />
            <class name="cn.chenf24k.tester.testngxml.TestNGXmlTest2" />
        </classes>
    </test>
</suite>

也可通过包名指定

<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd" >

<suite name="Suite1" verbose="1">
    <test name="Test3"   >
        <packages>
            <package name="cn.chenf24k.tester.xml.xmlpackage" />
        </packages>
    </test>
</suite>

通过指定的组运行

<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd" >

<suite name="Suite1" verbose="1">
    <test name="Test4">
        <groups>
            <run>
                <include name="e-commerce"/>
                <exclude name="demo"/>
            </run>
        </groups>

        <classes>
            <class name="cn.chenf24k.tester.xml.xmlincludedexcluded.TestNGXmlDemo1">
            </class>
            <class name="cn.chenf24k.tester.xml.xmlincludedexcluded.TestNGXmlDemo2">
            </class>
        </classes>
    </test>
</suite>

完整的功能列表可以参考testng.dtd来学习。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值