看这里有点静悄悄, 可不能偷懒啊, 都来做个小练习吧.
大家走知道测试人员有自己的TESTCASE记录怎么做测试, 现在设想把这些TESTCASE做成XML文档.
要求:
1. XML当中的东西要很容易转化到一个DATABASE里去, 反之, DATABASE里的东西也要很容易转化成XML文档.
2. 因为这个TESTCASE里边有些元素可能会改,或是增减, 要求XML文档有伸展性.
3. 用SCHEMA不用DTD.
我在下边做了个XML稳当的初稿, 大家看看如何.
问题: <requirement>,<action>, 和<expectedouput>该怎么做才好,就这么都放一堆了, 还是再分开点好呢. 因为我还要做一个网页介面, 当有人把相关的资料都填好并按下"提交", 就会自动生成XML文档或是存进DATABASE(由提交人决定). 而将来还是通过网页介面把存好的TESTCASE再显示给人看, 所以应该有不少东西要考虑. 如果把东西都放一堆, 我怕将来显示的是后不是1,2,3的很偶条理的显示出来.
顺便问问, 大家知道PHP处理XML的能力如何吗? 我想用PHP做那网页介面. 或是JSP, 因为JAVA做很多东西都很方便.
这是TESTCAE的基本构造:
Productname
-name
-version
Componentname
-name
-verison
Author
-name
-group: development, qa, fieldengineer
Testtype: Blackbox, Whitebox, Graybox
Casegroup: Installationtest, Smoketest, GUItest..
Testcaseid: assigned by database
Priority: Very high, Hight, Medium, Low
Description: can be some paragraphs
Requirement: can be some paragraphs
Action: can be some paragraphs
Expectedoutput: can be some paragraphs
Testcaseversion:
Tester:
Testreulst:
-buildnumber
-result: pass, fail
status: open, supercede
Arrivaltime: assigned by system
Lastmodifiedtime: assigned by system
一个TESTCASE写成XML的样板, 多提提意见啊.
<?xml version="1.0" encoding="UTF-8"?>
<productname>
<name>Hello World</name>
<version>1.1.0</version>
</productname>
<componentname>
<name>Println</name>
<version>1.2.0</version>
</componentname>
<author>
<name>joy</name>
<group>qa</group>
</author>
<testtype>blackbox</testtype>
<casegroup>smoketest</casegroup>
<testcaseid>1</testcaseid>
<priority>very high</priority>
<description>This test case should be performed along with other smoke test cases before other testing are conducted.</description>
<requirement>1. The installation test has been passed.
2. The program can be start up.
3......
</requirement>
<action>
1. do.....
2. do....
3. do...
4. do...
</action>
<expectedouput>
1. it ....
2. it ...
3. it...
</expectedouput>
<testcaseversion>1.0</testcaseversion>
<tester>me</tester>
<testresult>
<buildnumber>1.1.1</buildnumber>
<result>pass</result>
</testresult>
<status>open</status>
<arrivaltime>2004/08/13 22:49:38</arrivaltime>
<lastmodifiedtime>2004/08/13 22:49:38</lastmodifiedtime>