﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>IT博客网-骗子的测试点滴-文章分类-他人的测试总结</title><link>http://www.cnitblog.com/charester/category/3440.html</link><description>我说我是搞测试的。可是我还要系统维护。

我说我是搞系统维护的。我又要搞网络维护，

我说我是搞网络维护的，我又要。。。

所以说我是个打杂的。

</description><language>zh-cn</language><lastBuildDate>Fri, 09 Mar 2007 05:55:55 GMT</lastBuildDate><pubDate>Fri, 09 Mar 2007 05:55:55 GMT</pubDate><ttl>60</ttl><item><title> 用单网卡连接两个网段 </title><link>http://www.cnitblog.com/charester/articles/21330.html</link><dc:creator>骗子的天空</dc:creator><author>骗子的天空</author><pubDate>Sat, 30 Dec 2006 02:06:00 GMT</pubDate><guid>http://www.cnitblog.com/charester/articles/21330.html</guid><wfw:comment>http://www.cnitblog.com/charester/comments/21330.html</wfw:comment><comments>http://www.cnitblog.com/charester/articles/21330.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/charester/comments/commentRss/21330.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/charester/services/trackbacks/21330.html</trackback:ping><description><![CDATA[学校有两个计算机教室，各有40台电脑，两个教室通过交换机连接。为了防止学生在网络上私自传送文件，我们将这两个教室的计算机的IP地址设置在不同的网段上。但是新的问题出现了：虽然两个教室隔离开了，但老师们上课传递课件又成了问题，能不能解决这个问题呢？经过一系列的探索，我们采用单网卡实现了两个教室间的通信。<br /><br />　　实现原理<br /><br />　　在没有路由器的情况下，在同一个IP子网内的主机才能通信。主机不在同一网段内，即使通过交换机或集线器连接了也无法相互通信。不信您可以试一下，用两台不同网段IP的主机（如192.168.1.1和192.168.2.1，使用255.255.255.0作为子网掩码），即使把这两台电脑连接在同一集线器或交换机上，在只使用TCP/IP协议时，它们是无法通信的。<br /><br />　　我们知道，一台计算机是可以有多个IP地址的，如果我们给一台服务器绑定两个以上IP地址，其中一个IP地址在一个网段中（如192.168.1.0），另一个IP地址在另一个网段中（如192.168.2.0），如果给服务器提供路由功能，这两个IP地址充当网关，就可以把两个网段连接在一起了。经过查找资料，我们发现Windows 2000 Server具有的“路由和远程访问”服务，能够很好地提供路由功能。<br /><br />　　“路由和远程访问”的配置 <br /><br />　　为了解决这个问题，需要在连接这两个教室的交换机或集线器上安放一台使用静态IP地址的服务器。这台服务器需要至少指定两个IP地址，一个IP地址处在一个教室计算机所在的网段中，另一个IP地址处在另一个教室计算机所在的网段中。<br /><br />　　在默认状态下，Windows 2000 Server已经安装了“路由和远程访问”服务，只是没有配置好，所以需要进行相关设置：<br /><br />　　1、 在服务器上以管理员身份登录，点击“开始”，在“程序”组中会有一个“计算机管理”，点击其中的“管理工具”程序组，“管理工具”里面有一个“路由和远程访问”项，找到后点击，在出现的“操作”菜单上点击“配置并启用路由”项，会出现“路由和远程访问服务器安装向导”，按照向导的提示进行操作就可以了。点击[下一步]按钮，出现选择项，我们需要选择的是“网络路由器”，因为我们的目的就是让Windows 2000 Server承担路由器的责任。<br /><br />　　2、点击[下一步]按钮后，会出现确定协议的窗口。现在IPX/SPX协议已经不使用了，而且NetBEUI协议也不是可以路由的协议，所以我们只需要对TCP/IP协议进行路由，选择“是，所有可用的协议都在列表上”就可以了。<br /><br />　　3、点击[下一步]按钮，会出现是否允许远程拨入的选项，因为我们在局域网中，不允许用户从电话线拨入局域网，因此选择“否”就可以了。再点击[下一步]按钮，就会提示设置完成了。点击[完成]按钮之后，会出现“正在启动路由和远程访问服务”的提示，启动之后的“路由和远程服务”窗口如附图所示。<br /><br /><br /><br /><br /><br />　　设置客户端<br /><br />　　在启用服务后，并不是马上可以使用，而是需要给客户端指定网关的IP地址。因为虽然启动了路由器，但是客户端计算机并不知道路由器（即网关）的IP地址，所以还是无法通信。<br /><br />　　客户端的设置也很简单，假定您使用Windows 98作客户端，在“网上邻居”上右击，在弹出的菜单中点击“属性”，在协议列表中点击“TCP/IP”协议，点击[属性]按钮，就会出现“TCP/IP属性”对话框。在“网关”选项卡中，在“新网关”下面的IP地址栏输入服务器的IP地址，再点击[添加]按钮。服务器有两个IP地址，选择哪一个呢？当然是选择和当前主机在同一个网段的IP地址了。即如果当前主机IP地址是“192.168.1.150”，那么网关的IP地址就是“192.168.1.X”的那个IP地址。当然，这不需要在所有的计算机上设置，只要在需要跨网段通信的计算机上设置就可以了。<br /><br />　　在所有的设置完成之后，现在您用“ping”命令测试一下与另外一个网段的通信是否正常。如果您设置的都正确，通信就会没问题的。<br /><br />　　如何停止服务<br /><br />　　如果想中断两个网段的通信，如何实现呢？这也很好实现：在“路由和远程访问”程序中点击其中的“IP路由选择”，在右边出现的“本地连接”中右击，在弹出的菜单中点击“属性”，会出现一个对话框，在“启用IP路由器管理器”上去掉复选框即可。<br /><br />　　如果您有多个网段，也可以用这个方法实现，原理是一样的。如果两个教室之间的交换机或集线器没有直接连接，此时就需要服务器安装双网卡，每块网卡分别连接到一个教室的交换机或集线器上，再分别指定一个IP地址，再启用“路由和远程访问”服务即可。<!-- google firefox --><script type="text/javascript"><!--         google_ad_client = "pub-8722551381340391";         google_ad_width = 468;         google_ad_height = 60;         google_ad_format = "468x60_as_rimg";         google_cpa_choice = "CAAQycb8zwEaCNrmdvgKt1bFKJnA93M";         //--></script><script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script><br /><img src ="http://www.cnitblog.com/charester/aggbug/21330.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/charester/" target="_blank">骗子的天空</a> 2006-12-30 10:06 <a href="http://www.cnitblog.com/charester/articles/21330.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何用WORD自动生成目录</title><link>http://www.cnitblog.com/charester/articles/21205.html</link><dc:creator>骗子的天空</dc:creator><author>骗子的天空</author><pubDate>Thu, 28 Dec 2006 03:50:00 GMT</pubDate><guid>http://www.cnitblog.com/charester/articles/21205.html</guid><wfw:comment>http://www.cnitblog.com/charester/comments/21205.html</wfw:comment><comments>http://www.cnitblog.com/charester/articles/21205.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/charester/comments/commentRss/21205.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/charester/services/trackbacks/21205.html</trackback:ping><description><![CDATA[微软WORD这个软件大家都很熟悉，但有不少功能我们并没有用到，其中不乏非常实用的。今儿个我给大家介绍一下如何用WORD自动生成目录。这对那些用WORD写书，写论文的朋友很有帮助。
<p>　　<strong>优点：</strong>用WORD根据文章的章节自动生成目录不但快捷，而且阅读查找内容时也很方便，只是按住Ctrl点击目录中的某一章节就会直接跳转到该页，更重要的是便于今后修改，因为写完的文章难免多次修改，增加或删减内容。倘若用手工给目录标页，中间内容一改，后面页码全要改是一件很让人头痛的事情。应该自动生成的目录，你可以任意修改文章内容，最后更新一下目录就会重新把目录对应到相应的页码上去。</p><p>　　<strong>步骤：</strong>（以下内容在WORD2003中操作，其它版本WORD略有差别，但大同小异。）</p><div align="center"><a class="blue" href="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-01-l.gif" target="_blank"><img src="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-01.gif" border="0" /><br /><br />点击查看/下载大图（68K）</a></div><div align="left">　　1．在<strong>[格式]</strong>中选<strong>[样式与格式]</strong></div><div align="left"> </div><div align="left"><div align="center"><a class="blue" href="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-02-l.gif" target="_blank"><img src="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-02.gif" border="0" /><br /><br />点击查看/下载大图（74K）</a></div>　　2．出现右边的一条“样式格式”栏，这里面主要就是用到标题1，标题2，标题3。把标题1，标题2，标题3分别应用到文中各个章节的标题上。例如：文中的“<strong>第一章 制冷概论</strong>”我们就需要用标题1定义。而“<strong>1.1制冷技术的发展历史</strong>”就用标题2定义。如果有<strong>1.1.1×××</strong>那就用标题3来定义。</div><div align="left"> </div><div align="center"><a class="blue" href="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-03-l.gif" target="_blank"><img src="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-03.gif" border="0" /><br /><br />点击查看/下载大图（74K）</a></div><div align="left">　　3．当然标题1，标题2，标题3的属性（如字体大小，居中，加粗，等等）可以自行修改的。修改方法：右键点击“<strong>标题1</strong>”选“<strong>修改</strong>”，会弹出修改菜单，您可以根据自己的要求自行修改。</div><div align="left"> </div><div align="center"><img src="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-04.gif" /><div align="center"><a class="blue" href="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-05-l.gif" target="_blank"><img src="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-05.gif" border="0" /><br /><br />点击查看/下载大图（70K）</a></div></div><p>　　4．用标题1，2，3分别去定义文中的每一章节。定义时很方便，只要把光标点到“<strong>第一章 制冷概论</strong>”上，然后用鼠标左键点一下右边的标题1，就定义好了；同样方法用标题2，3定义1.1；1.1.1；依此类推，第二章，第三章也这样定义，直到全文节尾。</p><p> </p><br /><br /><p></p><p></p><div align="left"><div align="center"><a class="blue" href="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-06-l.gif" target="_blank"><img src="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-06.gif" border="0" /><br /><br />点击查看/下载大图（67K）</a></div>　　5．当都定义好后，我们就可以生成目录了。把光标移到文章最开头你要插入目录的空白位置，选<strong>[插入]</strong>--<strong>[引用]</strong>--<strong>[索引和目录]</strong></div><div align="left"> </div><div align="center"><a class="blue" href="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-07-l.gif" target="_blank"><img src="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-07.gif" border="0" /><br /><br />点击查看/下载大图（76K）</a></div><div align="left">　　6．选第二个选项卡<strong>[目录]</strong>，然后点右下的确定。就OK了。</div><div align="left"> </div><div align="center"><a class="blue" href="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-08-l.gif" target="_blank"><img src="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-08.gif" border="0" /><br /><br />点击查看/下载大图（66K）</a></div><div align="center">上图就是自动生成的目录</div><div align="center"> </div><div align="center"><a class="blue" href="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-09-l.gif" target="_blank"><img src="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-09.gif" border="0" /><br /><br />点击查看/下载大图（70K）</a></div><p>　　7．当你重新修改文章内容后，你需要更新一下目录，方法是：在目录区域内，点右键，选<strong>[更新域]</strong></p><div align="center"><a class="blue" href="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-10-l.gif" target="_blank"><img src="http://www.isso.com.cn/article/newimage/2005/8/2005-8-31-31-10.gif" border="0" /><br /><br />点击查看/下载大图（72K）</a></div><div align="left">　　8．当选<strong>[更新域]</strong>后，会出现上图的选框，选第二个“<strong>更新整个目录</strong>”点确定。就OK了。<br /><br /></div><div align="left">　　好了，使用Word自动生成目录的操作大致上就是如我上面所述，您学会了吗？</div><img src ="http://www.cnitblog.com/charester/aggbug/21205.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/charester/" target="_blank">骗子的天空</a> 2006-12-28 11:50 <a href="http://www.cnitblog.com/charester/articles/21205.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>给想进入测试行业的新人们几点建议</title><link>http://www.cnitblog.com/charester/articles/17870.html</link><dc:creator>骗子的天空</dc:creator><author>骗子的天空</author><pubDate>Wed, 11 Oct 2006 07:23:00 GMT</pubDate><guid>http://www.cnitblog.com/charester/articles/17870.html</guid><wfw:comment>http://www.cnitblog.com/charester/comments/17870.html</wfw:comment><comments>http://www.cnitblog.com/charester/articles/17870.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/charester/comments/commentRss/17870.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/charester/services/trackbacks/17870.html</trackback:ping><description><![CDATA[
		<span style="FONT-SIZE: 12px">这阵子公司招人，中午休息，听经理说了说面试情况，几十人中没一个可用的人才。所以今天想在此给想加入测试行业的新人们点不成熟的建议。如果你看后找到了合适的工作，请我吃饭，没有的话，那就～～等找到再请～哈哈～～<br />        本人做测试还不到3年，因此也算个初出茅庐的半新人吧^_^，但也做过几个公司，参与了几个项目了，结合自己的工作，想给新人们提个醒，让大家少走点弯路。纯粹的个人看法，如有不正确的地方，请大家就当不是我说的，哈哈～～闲言碎语不要讲～我现在开说～<br />        (1)首先要了解什么是测试，测试的做什么的。<br />        很多来应聘的根本就不知道测试是干什么的，有的更干脆，做测试就是为了适应下公司环境，然后转做程序员。这样的统统拉出去，毙了！<br />        (2)掌握计算机基础知识<br />        这是最基本的，因为你要描述你发现的问题，不能正确的使用专业语言描述，那对程序员来说看起来会难受。我曾遇到过一个刚进入测试行业的新人，他描述标题栏是这么说的“窗口最上的蓝条”。这种说法只对缓解紧张的工作气氛有用，对实际工作就没什么好的帮助了。<br />       (3)找几本测试方面的书学习<br />        对测试行业常用的名词有个大概的了解，比如：测试分几种，黑盒测试、白盒测试都是做什么的，等价类……等等。<br />       RON PATTON写的《软件测试》就不错，深入浅出，适合初学者。<br />      (4)对编程最好有点基础<br />      起码C总要学点吧，编程很重要，如果你不只是想永远做一个最低等测试员，建议你学习点编程。友情提示：数据库应用越来越广泛，因此数据库知识一定要跟上！<br />      (5)自动化测试不要着急学<br />      对新人来说，掌握自动化测试工具还没有必要，如果你面试的是一家公司新成立的测试部门，即使你去了，对你的发展也没有太大的好处，因为对新人来说，在毫无经验的部门工作，基本等于浪费时间，对自己的发展很不利：如果你面试的是家测试部门经验丰富的公司，他们想要培养新人，那就不会要求你什么都会，如果只是想招老手，呵呵，那你即使会自动化工具也没有用。<br />（6)学会沟通<br />不要不好意思，多动手实际操作，多问问有经验的前辈。融入团队，才能更好的工作。<br /></span>
<img src ="http://www.cnitblog.com/charester/aggbug/17870.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/charester/" target="_blank">骗子的天空</a> 2006-10-11 15:23 <a href="http://www.cnitblog.com/charester/articles/17870.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>有感于Songfun的软件测试常识</title><link>http://www.cnitblog.com/charester/articles/17866.html</link><dc:creator>骗子的天空</dc:creator><author>骗子的天空</author><pubDate>Wed, 11 Oct 2006 06:48:00 GMT</pubDate><guid>http://www.cnitblog.com/charester/articles/17866.html</guid><wfw:comment>http://www.cnitblog.com/charester/comments/17866.html</wfw:comment><comments>http://www.cnitblog.com/charester/articles/17866.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cnitblog.com/charester/comments/commentRss/17866.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/charester/services/trackbacks/17866.html</trackback:ping><description><![CDATA[
		<span style="FONT-SIZE: 12px">有感于Songfun的软件测试常识：<a href="http://bbs.51testing.com/thread-7244-1-1.html" target="_blank"><font color="#003366">http://bbs.51testing.com/thread-7244-1-1.html</font></a><br /><br />笔者初入软件测试领域才几个月时间，原来从事开发几年，由于工作调动而转行测试，最近才加入51Testing，在这里，才真正认识到有好多的东西要学。<br />今天读过Songfun的软件测试常识，觉得受益良多，觉得只有记下来自己的感受，才无愧于自己和大家。<br /><br />1) 测试的必要性。<br />为什么要进行测试？测试是不是只用来找BUG？还是老板要我做测试，没办法。测试是产品质量的辅助手段，是保证产品驱于客户满意的必要条件。测试充分准备了，发现了应该产品生命周期中的95%的BUG，就必然为产品的质量提供了帮助。<br /><br /><br />2) 测试的全程化<br />测试是全程化的，它不只是在需求和设计人员完成产品或项目的需求调研、设计等完成之后，根据其做的“测试设计”。测试应该是全程的，从产品的需求开始，测试人员就应该介入，做为相关共利益者，参加各种讨论和CCB会议，用测试的眼光查看提交的各种文档。要知道，这种文档是自己以后工作的依据，如果此时不清楚，或者不合理，都可能引起将来自己测试用例和测试方案的改变，因此此时都要用心，充分研究文档的每一条。<br /><br />以前一条没清楚测试人员在需求就介入能起什么作用，看来，此时非常的有必要。<br /><br />文章有一点我非常有共识，就是“测试以客户为中心”，包括需求是否是客户需求的，多的不要，少的不行，改变其习惯的也不能要等。我所测试的产品经常有客户反应使用不习惯，而开发者经常说我提供了相关功能了，只不过你改变一下习惯不行吗？不行，客户是甲方，他有权力说不行，如果等要交付产品时才改，那改动就非常非常大了，血的教训呀。<br /><br />3) 测试人员的职业化<br />测试人员要有清晰的头脑，知道自己在做什么，自己为什么做，如何去做，预期达到的效果是什么。一定要保持清醒的头脑，千万不要把自己看成是产品开发过程中的附属部门，可有可无，干好干坏都一样，实际不是这样。每个领导既然设置了测试部分，就说明他还是对测试报有很强的信心，要做出点什么事情(除非那那要开发人员兼做测试的那种)。<br /><br />我很佩服刘德华，40多岁的人了，还要娱乐圈如此活跃，尤其喜欢他说过的话，做什么事情都要上心，努力做好每一件事儿。这也是个男人负责任的表现。<br /><br />具体到职业化的做法，就有很多的理论和空间可去做，包括心理、思维、交流等了，但是我还是想说一句，不知是哪位大师说过的了“测试是一门艺术”，有很强的发挥空间，看自己怎么去处理。<br /><br /><br />4) 分析报告<br />这一点是也是我从songfun的文章中感受很深的一点。做测试的意义是什么？找完了BUG，还能做什么？以前做开发，测试人员给我的感觉就是找BUG、同时做点需求上的纠正就算不错了。而事后的分析几乎没有，开发者和设计者从来没有对自己犯的错误进行过分析，以后相类的错误还是出现，大量的时间和精力还是要继续放在找BUG上。<br /><br />多一点分析，多一点指导，这是一个企业的知识库的所在，也是企业精神的所在。而我们实在是太欠缺了。<br /><br /><br /><br /><br />当然，仍有比较困惑的地方：<br /><br />1) 自动化测试领导的80-20原则是否仍成立<br />在原文的80-20原则部分，Songfun兄说自动化也大致符合其数据。但是我在几个月的工作中主要进行的自动化测试，我总觉得这个数据不太适合自动化测试。项目不同，自动化BUG查找率也不尽相同，而且相差比较多，像我的工作，自动化测试目前还不到10%，而且我也看了几本外国人写的书，像Mosley等，他们也对这个数据感觉无法控制。<br /><br />2) 为效益而测试中的度是什么？<br />在企业中，除管理层外，最受重视的销售，然后是开发，最后才是测试。因为前者是最接近钱的部门，而测试是最与钱无关的部分。不论老板怎么说重视测试，测试总是处于最被忽视的地方(至少中国老板是)。测试人员考虑不到多少成本问题，它只是对产品的质量负责，职业精神也要测试人员把质量放在首位。<br />当然老板总是希望测试人员发现多多的BUG，而且不占用过多的成本，在这种压榨之下，要测试人员把这个度把握好实在不好办。<br /><br /><br />呵呵，还是学到很多的东西，感谢Songfun。</span>
		<br />
<img src ="http://www.cnitblog.com/charester/aggbug/17866.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/charester/" target="_blank">骗子的天空</a> 2006-10-11 14:48 <a href="http://www.cnitblog.com/charester/articles/17866.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>我对黑盒测试的一点看法</title><link>http://www.cnitblog.com/charester/articles/17864.html</link><dc:creator>骗子的天空</dc:creator><author>骗子的天空</author><pubDate>Wed, 11 Oct 2006 06:36:00 GMT</pubDate><guid>http://www.cnitblog.com/charester/articles/17864.html</guid><wfw:comment>http://www.cnitblog.com/charester/comments/17864.html</wfw:comment><comments>http://www.cnitblog.com/charester/articles/17864.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/charester/comments/commentRss/17864.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/charester/services/trackbacks/17864.html</trackback:ping><description><![CDATA[
		<span style="FONT-SIZE: 12px">以前做过一点开发，后来做测试，完全的黑盒测试，算来己经做了整一年了，<br />发个贴子，大家一起讨论<br /><br />以下内容完全是个人看法，希望大家多多补充<br /><br />1 测试前。接到做测试的工作之前，只有一年的开发的经验，知道快要接受测试任务了，就找了几本关于测试的书看，但没有一本是完全看完的，不过总算明白了测试是干什么的<br /><br />2 接触测试。刚做测试的时候觉得很轻松，比开发轻松多了。<br />  测试方法无人传授，也没有非常规范的测试用例，完全是使用，如果使用中发现问题就提BUG。非常随机。<br /><br />3 测试中 得到一个新项目，与前一项目比起来：<br />  优点：自己有了一点测试的经验，新项目有了测试用例（虽然很笼统，甚至有些用例与实际情况完全不符，看得出文档未更新过）<br />  缺点：这个新项目是自己不熟悉的，许多功能都不知道怎么用，甚至连操作也不会，一些帮助文档还是英文的（偏偏我英文又不好）<br />  有了前一项目的经验，这次，自己测试使多少讲究一点方法，比如说<br />  对软件的功能项逐个扫描，菜单一个一个的点，看看是不是汉化完全，是否可以实现预期效果<br />  用一些边界测试的方法，<br />  测试时使用用例尽量全面一点，比如测试播放器时，找各种文件格式<br />  总结：有点进步，不过也开始觉得黑盒测试没有技术含量，十分期望自动化测试和白盒测试。<br /><br />4。学习中 学习了一些测试的理论思想，有了一点转变。<br />   黑盒测试并不是那么低级，<br />        1。黑盒测试还是许多公司使用的一种主要手段<br />        2。许多软件产品并不是像军用软件那样要求安全性那么高，所以对一般的软件来说，白盒测试似乎没有必要，无论时间，经费，人力都花费太多，还浪费。<br />        3。自动化测试在压力测试，回归测试这种大批量运行用例时是非常优势的，但有些部分还是需要人工手动测试的，必竟人是最智能的，在系统运行时，可以发现一些意外的情况。<br />   自动化测试真的很好，不过。。。<br />        1。许多自动化测试需要工程师写脚本，人们常说在黑盒测试中，BUG的发现（测试的质量）很大程序上取决于测试人员的经验，但个人认为，在编写脚本方面，脚本编写人员的主观能力也很大程度上决定了测试的质量。就像程序员编写软件一样，一个路径考虑不到，就会造成BUG，测试工程师在写脚本时，如果少考虑一种可能性，也就有可能丢掉一个发现BUG的机会。<br />        2。现在大多数软件都是图形界面，但大家都知道，GUI的自动化测试到现在还是一个处于发展中的题目。所以个人认为GUI的测试仍然需要大量的人工测试。<br /><br />自己的想法：<br />    网上都说国外一个程序员要配3－5个测试人员，想来那样软件的质量一定会很高吧。不过，国内，尤其是一些小的软件公司恐怕在未来的几年内都无法达到这个比例，但软件质量又一定要保证，怎么办呢。所以我觉得，在资金有限，时间有限的情况下用黑盒测试是一个最好的选择。<br />    很多人都说测试是女生比较适合的职业，因为开发太累。个人觉得，如果真的是做白盒测试，写脚本之类，测试工作并不轻松，甚至这种工作从一定程度上讲算是半个程序员。不仅要会编码，还要有很强的逻辑思维和分析问题的能力。但如果一个测试员没有足够的测试经验，他怎么能编写出善于发现问题的测试脚本呢。所以，做黑盒测试应该是测试人员的一个必修课。<br />    总之，自己现在己不再很彷徨（是不是自己有点不求上进呀？），也不是对黑盒测试那么看不起。我觉得，现在要做的是，在黑盒测试中不断训练自己发现问题，分析问题的能力，同时要努力使自己的测试方法系统化，机械化，防止随机的测试。每一个人都有自己的独特方法，我们要在实践中不断验证自己的方法，改进方法，这样，日后才能写出高质量的脚本，如果在黑盒测试时，能够分析出一个问题的原因，那么，在白盒测试中，就有可能较快的找到代码中的关键之处，添写错误代码，或加探针。另外，做的时间长了，也会对软件质量管理有一个更深的体会。<br />   测试行业总是会向前发展的，总有一天，大部分测试人员都会使用工具，编写测试代码。现在最需要做的应该是首先做好现在的“低级测试”并记住学习测试的先进知识，还有重要的是多实践，多思考。慢慢就会在实践中发现现有测试方法或测试管理的不足之处，然后，就有了动力，想法改进这个不足或者以此给自己的职业重新定位，这样就提高了一点点。<br />   希望有更多的人不再郁闷，想开一点，总有办法的，整天被工作搞得郁闷对健康没有好处。<br />   个人这样认为，可能有点偏激，大家一起讨论！！！<br /></span>
<img src ="http://www.cnitblog.com/charester/aggbug/17864.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/charester/" target="_blank">骗子的天空</a> 2006-10-11 14:36 <a href="http://www.cnitblog.com/charester/articles/17864.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>软件测试基本知识复习（二）</title><link>http://www.cnitblog.com/charester/articles/15102.html</link><dc:creator>骗子的天空</dc:creator><author>骗子的天空</author><pubDate>Thu, 10 Aug 2006 09:24:00 GMT</pubDate><guid>http://www.cnitblog.com/charester/articles/15102.html</guid><wfw:comment>http://www.cnitblog.com/charester/comments/15102.html</wfw:comment><comments>http://www.cnitblog.com/charester/articles/15102.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/charester/comments/commentRss/15102.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/charester/services/trackbacks/15102.html</trackback:ping><description><![CDATA[
		<p>测试计划</p>
		<br />
		<p>要求：<br />1）了解软件测试计划的重要性<br />2）了解软件测试计划的编写过程和主要内容<br />3）了解软件需求应该具有的特征<br />4）了解如何对软件需求进行静态测试<br />5）学会确定测试策略<br />6）学会定义测试环境<br />7）对软件测试管理工作有所了解</p>
		<p>测试计划内容和要点<br />　　一个软件项目的测试计划是一份描述软件测试工作的目标、范围、策略、方法和重点的文档。测试计划的准备过程是思考检查并确认一个软件产品的可接受性的一个有用方法。<br />在测试计划中应当关注以下内容：测试需求、测试策略、测试资源、风险和意外。</p>
		<p>测试计划中应该定义下列内容：<br />·测试活动进度综述，可供项目经理产生项目进度时参考。<br />·测试方法，包括测试工具的使用。<br />·测试工具，包括如何和何时获取工具。<br />·实施测试和报告结果的过程。<br />·系统测试进入和结束准则。<br />·设计、开发和执行测试所需的人员。<br />·设备资源，需要什么样的机器和测试基准。<br />·恰当的测试覆盖率目标。<br />·测试所需的特殊软件和硬件配置。<br />·测试应用程序策略。<br />·测试哪些特性，不测试哪些特性。<br />·风险和意外情况计划。</p>
		<p>测试计划制定过程<br />步骤：<br />分析和测试软件需求－＞定义测试策略－＞定义测试环境－＞定义测试管理－＞编写和审核测试计划</p>
		<p>1．分析和测试软件需求：在软件需求阶段，软件测试人员就需要加入到软件开发过程中。在这个阶段，测试人员需要对需求有完整的理解，还需要对需求文档进行测试，以确保软件需求文档的清晰性、无二义性。<br />2．定义测试策略：所谓测试策略，指的是总体的测试范围、测试活动的进入/退出标准、自动化测试工具的选择、测试文档的选择、测试软件的编写等。<br />3．定义测试环境：根据被测软件的不同，测试环境也有不同的组成。测试环境包括了软件运行的硬件平台、软件平台、数据，有时候也包括一些特殊的外围设备。<br />4．定义测试管理：要确定测试中每个阶段的目标，确定每项工作的工作量，评估风险，确定测试管理平台，确定开发人员和测试人员的沟通、协作方式，定义不同角色的职责。<br />5．编写计划文档：上述几项工作完成后，就需要编写测试计划文档。另外测试计划文档不是一成不变的，它需要根据情况的变化进行相应的更新。</p>
		<p>分析和测试软件需求<br />需求分析过程：<br />需求分析所要做的工作是深入描述软件的功能和性能，确定软件设计的限制和软件同其他系统元素的接口细节，定义软件的其他有效性需求。简单地说需求分析就是准确地定义未来系统的目标，确定为了满足用户的需求系统必须做什么。因此需求分析阶段必须清楚地理解所要解决的问题，完整地获取用户需求。</p>
		<p>做需求分析的步骤：<br />（1）收集用户需求　可以通过客户访谈等途径收集客户需求。<br />（2）编写需求分析文档　从客户获得需求，整理并写成需求定义文档中是所有通过客户访谈获取需求的一个列表。它表示与开发组织之间的一个认可，需求定义编写采用自然语言，使用户易于阅读理解。<br />（3）编写软件功能说明<br />（4）编写软件需求跟踪矩阵　一旦需求被定义和说明，需要编写需求跟踪矩阵，其目的是跟踪每一个需求以确保其被实现和测试。<br />（5）审核软件需求文档</p>
		<p>末完待续......</p>
<img src ="http://www.cnitblog.com/charester/aggbug/15102.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/charester/" target="_blank">骗子的天空</a> 2006-08-10 17:24 <a href="http://www.cnitblog.com/charester/articles/15102.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>软件测试基础知识复习（一）</title><link>http://www.cnitblog.com/charester/articles/15101.html</link><dc:creator>骗子的天空</dc:creator><author>骗子的天空</author><pubDate>Thu, 10 Aug 2006 09:23:00 GMT</pubDate><guid>http://www.cnitblog.com/charester/articles/15101.html</guid><wfw:comment>http://www.cnitblog.com/charester/comments/15101.html</wfw:comment><comments>http://www.cnitblog.com/charester/articles/15101.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/charester/comments/commentRss/15101.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/charester/services/trackbacks/15101.html</trackback:ping><description><![CDATA[
		<p>
				<span lang="ZH-CN" style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体">软件测试基础知识复习（一）</span>
		</p>
		<br />
		<p>软件测试基础知识复习（一）</p>
		<p>软件开发过程及软件质量保证<br />1.软件开发过程的几个主要阶段：<br />1）定义。明确开发的目标，软件的需求。<br />2）计划。制订软件开发所涉及到的计划。<br />3）设计。设计、编码、编写文档等，完成要求的软件特性。<br />4）稳定化。主要是测试和缺陷修复，确保软件的质量。<br />5）安装。安装、提交完成的软件，为客户提供运行环境。<br />2.几种常用的软件生命周期模型：<br />1）瀑布模型。<br />2）原型模型。<br />3）增量模型。<br />4）螺旋模型。<br />从软件测试人员的角度来看软件开发过程，需要注意的是：测试贯穿在整个开发过程中，而不是在某个阶段集中地做一下测试而其它阶段不用理会测试工作。</p>
		<p>一个软件之所以被认为为质量优秀，是它内在具备了这样一些特性：<br />满足用户的需求；<br />合理进度、成本、功能关系；<br />具备扩展性和灵活性，能够适应一定程度的需求变化；<br />能够有效地处理例外的情况；<br />保持成本和性能的平衡。</p>
		<p>
				<strong>软件质量保证</strong>(Software Quality Assurance-----SQA)是为了确保软件开发过程和结果符合预期的要求而建立的系列规程，以及依照规程和计划采取的一系列活动及其结果评审。</p>
		<p>软件质量保证的活动主机包括：<br />技术方法的就用；<br />正式技术评审的实施；<br />软件测试；<br />标准的执行；<br />修改的控制；<br />度量；<br />记录和记录保存。</p>
		<p>
				<strong>软件错误的定义</strong>：软件错误是软件产品中存在的导致期望的运行结果和实际结果间出现差异的一系列问题，这些问题包括故障、失效、缺陷。</p>
		<p>
		</p>
		<p>
				<strong>软件测试</strong>：<br />软件测试就是为了发现软件中存在的错误而分析或执行程序的过程。具体地说，软件测试是分析程序或根据软件开发各阶段的规格说明和各程序的内部结构而精心设计出一批测试用例，并利用测试用例来运行程序，以发现程序错误的过程。</p>
		<p>软件测试有两个基本的功能：验证(Verification)和确认(Validation)。<br />验证指保证软件正确地实现了特写功能的一系列活动。<br />确认指保证最终的产品满足系统需求。<br />通俗的说：验证保证产品的正确性；确认保证生产了正确的产品。</p>
		<p>软件测试人员应该至少具备以下两个关键领域方面的知识：<br />1）软件测试技术；<br />2）被测应用程序及其相关应用领域知识。</p>
		<p>理解以下的描述：<br />测试能提高软件的质量，但是提高质量不能依赖测试；<br />测试只能证明错误存在，不能证明错误不存在；<br />测试的主要困难是不知道该如何进行有效地测试，也不知道什么时候能够放心的结束测试；<br />每个程序员都应当测试自己的程序（份内事），但不能作为程序已通过测试的依据（所以项目需要独立的测试人员）；<br />80-20原则：80%的错误聚集在20%的模块中，经常出错的模块改错后还是会经常出错；<br />测试应当循序渐进，不要企图一次性做完。"欲速则不达"。</p>
		<p>测试人员的目标和主要工作：<br />目标：（1）.基本目标是发现软件错误；<br />（2）.要尽可能早的找出软件错误；<br />（3）.必需确保找出的软件错误得以关闭。</p>
		<p>主要工作：<br />1）规划测试任务<br />2）设计测试（包括编写测试用例等等）<br />3）建立一个合适的测试环境<br />4）评估、获取、安装和配置自动测试工具<br />5）执行测试<br />6）撰写适当的测试文档</p>
		<p>
				<strong>软件测试的分类</strong>
				<br />1．从是否需要执行被测试软件的角度分：有静态测试和动态测试。<br />2．从测试是否针对软件结构和算法的角度分类分：白盒测试和黑盒测试。<br />3．从测试的不同阶段分：单元测试、集成测试、系统测试和验收测试四个阶段。<br />其中系统测试有：功能测试、健壮性测试、性能测试、用户界面测试、安全性测试、压力测试、可靠性测试、安装/反安装测试等等。</p>
		<p>针对某些功能作用的测试：<br />回归测试：指错误被修正后或软件功能、环境发生变化后进行的重新测试。<br />功能测试：测试软件的功能是否符合功能性需求，通常采用黑盒测试方式。<br />负载测试：测试软件系统的最大负载，超出此负载软件有可能会失常。<br />压力测试：与负载测试差不多，叫法不同。<br />易用性测试：测试软件是否易用，主观性比较强。一般要根据用户的反馈信息来评价。<br />安装与反安装测试：测试软件在"全部、部分、升级"等状况下的安装/反安装过程。<br />恢复测试：测试系统从故障中恢复的能力。<br />安全性测试：测试系统防止非法侵入的能力。<br />兼容性测试：测试系统与其它软件、硬件兼容的能力。<br />内存泄漏测试：测试软件在运行过程中是否会造成内存泄漏。<br />比较测试：通过与同类产品比较，考察该产品的优点、缺点。<br />Alpha测试：一种先期的用户测试，此时系统刚刚开发完成。<br />Beta测试：一种后期的用户测试，此时系统已经通过内部测试，大部分错误已经改正，即将正式发行。同Alpha测试一样都由用户进行，场地不同，Alpha测试一般是把用户请到开发方的场地来测试，Beta测试是指在一个或多个用户的场所进行测试。</p>
		<p>
				<strong>测试工作的主要步骤</strong>：<br />1）测试计划：测试人员要首先对需求进行分析，最终定义一个测试集合。<br />2）测试设计与开发：根据软件需求、说明书完成测试用例设计并编写必要的测试驱动程序。<br />3）执行测试：需要做的工作是，建立测试环境；根据前面编写的测试计划和测试用例运行测试；记录测试结果；报告软件缺陷；跟踪软件缺陷直至其被处理；分析测试结果</p>
		<p>
				<br />PS　测试工程师职业素质<br />1）责任心<br />2）学习能力<br />3）怀疑精神<br />4）沟通能力<br />5）专注力<br />6）洞察力<br />7）团队精神<br />8）注重积累</p>
		<p>
				<br />2006-4-14笔记 By Pop</p>
<img src ="http://www.cnitblog.com/charester/aggbug/15101.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/charester/" target="_blank">骗子的天空</a> 2006-08-10 17:23 <a href="http://www.cnitblog.com/charester/articles/15101.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>测试经验交流</title><link>http://www.cnitblog.com/charester/articles/15100.html</link><dc:creator>骗子的天空</dc:creator><author>骗子的天空</author><pubDate>Thu, 10 Aug 2006 09:20:00 GMT</pubDate><guid>http://www.cnitblog.com/charester/articles/15100.html</guid><wfw:comment>http://www.cnitblog.com/charester/comments/15100.html</wfw:comment><comments>http://www.cnitblog.com/charester/articles/15100.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/charester/comments/commentRss/15100.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/charester/services/trackbacks/15100.html</trackback:ping><description><![CDATA[
		<p>
				<strong>
						<font color="#ff0000">测试经验交流</font>
				</strong>
		</p>
		<p>文章来源：AKA杂志</p>
		<p>本文主要目的是加强项目组和测试中心之间的相互了解，分享一些测试人员在工作中的经验和成果， 从而使项目组和测试中心的配合更加默契，共同把握住产品的质量要素。 <br /><br />一、 测试的目的和原则 <br />1、测试概念的范畴 <br /><br />　　广义上讲，测试是指软件产品生存周期内所有的检查、评审和确认活动。如：设计评审、系统测试。 <br /><br />　　狭义上讲，测试是对软件产品质量的检验和评价。它一方面检查软件产品质量中存在的质量问题，同 <br />时对产品质量进行客观的评价。 <br /><br />2、测试的目的 <br /><br />　　简单地说，就是替用户受过，测试的最终目的是确保最终交给用户的产品的功能符合用户的需求，把 <br />尽可能多的问题在产品交给用户之前发现并改正。 </p>
		<p>.......</p>
		<br />具体地讲，测试一般要达到下列目标： <br /><br />　　1、确保产品完成了它所承诺或公布的功能，并且所有用户可以访问到的功能都有明确的书面说 <br />明------在某种意义上与ISO9001是同一种思想。 <br /><br />　　产品缺少明确的书面文档，是厂商一种短期行为的表现，也是一种不负责任的表现。所谓短期行为，是指缺少明确的书面文档既不利于产品最后的顺利交付，容易与用户发生矛盾，影响厂商的声誉和将来与用户的合作关系；同时也不利于产品的后期维护，也使厂商支出超额的用户培训和技术支持费用。从长期 利益看，这是很不划算的。我有个感觉，接触过的软件产品，很少有向方正这样大大的产品、薄薄的文档。 <br /><br />　　当然，书面文档的编写和维护工作对于使用快速原型法(RAD)开发的项目是最为重要的、最为困难，也是最容易被忽略的。 <br /><br />　　最后，书面文档的不健全甚至不正确，也是测试工作中遇到的最大和最头痛的问题，它的直接后果是测试效率低下、测试目标不明确、测试范围不充分，从而导致最终测试的作用不能充分发挥、测试效果不理想。 <br /><br />　　2、 确保产品满足性能和效率的要求 <br /><br />　　使用起来系统运行效率低(性能低)、或用户界面不友好、用户操作不方便(效率低)的产品不能说是一 个有竞争力的产品。 <br /><br />　　用户最关心的不是你的技术有多先进、功能有多强大，而是他能从这些技术、这些功能中得到多少好 处。也就是说，用户关心的是他能从中取出多少，而不是你已经放进去多少。 <br /><br />　　3、 确保产品是健壮的和适应用户环境的 <br /><br />　　健壮性即稳定性，是产品质量的基本要求，尤其对于一个用于事务关键或时间关键的工作环境中。 <br /><br />　　另外就是不能假设用户的环境(某些项目可能除外)，如：报业用户许多配置是比较低的，而且是和某 些第三方产品同时使用的。 <br /><br />3、测试的原则---Good Enough <br /><br />　　对于相对复杂的产品或系统来说，zero-bug是一种理想，good-enough是我们的原则。 <br /><br />　　Good-enough原则就是一种权衡投入/产出比的原则：不充分的测试是不负责任的；过分的测试是一种 资源的浪费，同样也是一种不负责任的表现。我们的操作困难在于：如何界定什么样的测试是不充分的， 什么样的测试是过分的。目前状况唯一可用的答案是：制定最低测试通过标准和测试内容，然后具体问题 具体分析。最明显的例子就是FIT3.0中文报版的产品测试。 <br /><br />4、测试的规律----木桶原理和80-20原则 <br /><br />　　1、木桶原理。 <br />　　在软件产品生产方面就是全面质量管理(TQM)的概念。产品质量的关键因素是分析、设计和实现，测 试应该是融于其中的补充检查手段，其他管理、支持、甚至文化因素也会影响最终产品的质量。应该说， 测试是提高产品质量的必要条件，也是提高产品质量最直接、最快捷的手段，但决不是一种根本手段。反 过来说，如果将提高产品质量的砝码全部押在测试上，那将是一个恐怖而漫长的灾难。 <br /><br />　　2、 Bug的80-20原则。 <br />　　一般情况下，在分析、设计、实现阶段的复审和测试工作能够发现和避免80%的Bug，而系统测试又能 找出其余Bug中的80%，最后的5%的Bug可能只有在用户的大范围、长时间使用后才会曝露出来。因为测试 只能够保证尽可能多地发现错误，无法保证能够发现所有的错误。 <br /><br />二、 测试中心测试组织、测试实施的现状和改进 <br />1、测试中心的任务和发展目标----质量 <br /><br />　　参与到监控产品生命周期中一切影响到质量的因素的工作中去。 <br /><br />　　目前测试中心的主要任务是负责产品的系统测试。 <br /><br />　　但实际上，因为单独的系统测试不能保证产品最终的质量，所以测试中心在部分项目中也参与到集成 测试和用户测试中。 <br /><br />　　另外，测试中心也承担了部分系统评测的任务和用户技术支持的任务。 <br /><br />　　测试中心将来的发展目标是研究院开发的产品的质量保证中心，我们的中心任务只有两个字："质 量"，测试中心也只对这两个字负责，并且将参与到监控产品生命周期中一切影响到质量的因素的工作中去。 <br /><br />2、测试中心的组织方式----小组 <br /><br />　　测试中心内部的个体分为测试人员和支持人员(管理人员属于支持人员)。 <br /><br />　　测试中心的工作实体(最小组织单位)是测试小组和支持小组，分别由小组长全权负责。小组长向测试 中心主任负责。 <br /><br />　　测试小组根据测试项目或评测项目的需要临时组建，小组长也是临时指定。与项目组的最大区别是生 命周期短，一般是2周到4个月。在系统测试期间或系统评测期间，测试组长是测试中心对外(主要是项目 组)的唯一接口，对内完全负责组员的工作安排、工作检查和进度管理。 <br /><br />　　支持小组按照内部相关条例负责测试中心的后勤保障和日常管理工作，机构设置一般相对比较稳定。 主要负责网络管理、数据备份、文档管理、设备管理和维护、员工内部培训、测试理论和技术应用、日常 事务管理和检查等。 <br /><br />　　另外，测试中心对于每一个重要的产品方向，如：报社系统(包括采编、FIT、RIP、字模等)、电视台 系统(包括点睛、新闻等)…，均设置1-3个人长期研究和跟踪方正及竞争对手的产品特征、性能、优缺点 等。在有产品测试时，指导或参加测试(但不一定作为测试组长)，在没有产品测试时，进行产品研究，并 负责维护和完善测试设计。目前希望在需求分析阶段多多参与(如：Chirashi2.1)。 <br /><br />3、测试中心的运作方式----制度化并形成应用 <br /><br />　　主要介绍一下项目组关心的系统测试流程： <br /><br />　　1、项目组提交系统测试申请给测试中心指定帐号。由专人检查文档格式和完备性。 <br /><br />　　2、检查合格后交给该产品对应方向的研究人员，评价其内容的有效性和真实性。 <br /><br />　　3、检查合格后由测试中心主任审查并通过，成立测试组，指定测试组长(但暂时没有组员)。 <br /><br />　　4、测试组长根据该产品的申请报告、测试设计和以往测试数据，制定测试方案。 <br /><br />　　5、测试中心主任审核通过测试方案后，根据测试方案指定测试组成员，并由支持组完成其他支持任 <br />务(如：设备的配备、测试数据库的建立、网络权限的修改…)。 <br /><br />　　6、测试期间测试组根据测试方案进行实际测试，记录并跟踪测试缺陷报告，填写测试记录。测试期 间测试组长与项目组(测试经理)经常沟通，并获取产品的更新版本。同时，测试组长审查、修改并提交所 有缺陷报告，保证随时掌握产品的质量情况，并监督测试进度。 <br /><br />　　7、产品进行到一定阶段后(标志是测试缺陷报告库中所有的报告处于归档状态)，由项目组和测试组 长共同决定产品进入稳定期测试。稳定期测试版本之前的版本必须在显著位置标明为测试版字样。 <br /><br />　　8、稳定期测试期间所发现的缺陷报告也需要记录在测试缺陷报告库中，并在稳定期结束后由双方(有 时可能也有市场方面的意见)共同决定对这些缺陷的处理方式。如果需要改动产品，则重新开始稳定期， 否则通过稳定期测试。 <br /><br />　　9、测试组长对于通过稳定期测试的产品填写综合测试报告，测试中心依此发布产品发行通知。 <br /><br />　　10、测试组对整个测试过程和产品质量进行总结和评价，形成文档并备案。同时，将测试过程中对测 试设计的改动纳入基线。最后，组长整理并在指定地点保存相关测试数据和测试样张。 <br /><br />　　11、测试中心解散测试小组。 <br /><br />　　另外，在系统测试阶段，我们要求测试小组要进行一些常规内容测试(如：Y2K测试，病毒检查、裸机 <br />测试、加密检查、说明书检查…)，并要求写入测试方案中。 <br /><br />4、传统测试流程遇到的挑战和对策----问题发现得越早，解决的代价就越小 <br /><br />　　1、 自动测试工具和测试理论 <br /><br />　　由于我们的产品开发模式还不够规范、相关文档不够完备，所以测试工具的应用效果不理想，只能部 分应用。如：SQA。 <br /><br />　　对于测试理论，测试思想/测试理念的灌输工作还是有成效的，但是测试数学模型的研究和建立工作 进展不顺利，主要原因也是我们的产品生命周期内部操作不够规范。 <br /><br />　　目前主要依赖于：测试人员的经验和素质；产品说明文档和项目组的技术咨询；测试设计。 <br /><br />　　2、 测试分类 <br /><br />　　根据目前的实际情况(已经由传统的瀑布开发模式、使用结构化设计和实现手段，变为现在的RAD开发 模式、使用OOD和OOP)，我们将把测试分为三种：产品测试、项目测试、系统评测。我们的依据是：问题 发现得越早，解决的代价就越小。 <br /><br />　　产品测试的流程基本和上面提到的一样。 <br /><br />　　项目测试的原则是尽早加入测试，并充分重视和支持用户测试。 <br /><br />系统评测是简化工作流程。 <br /><br />三、 测试中常见问题分析及对策 <br />　　我们一般把发现的错误bug(我们也称为缺陷defect)按严重性分为4类：死机(系统崩溃或挂起)、致命 (使系统不稳定、或破坏数据、或产生错误结果，而且是常规操作中经常发生或非常规操作中不可避免 的)、严重(系统性能或响应时间变慢、产生错误的中间结果但不影响最终结果，如：显示不正确但输出正确)、一般(界面拼写错误或用户使用不方便)。 <br /><br />　　我们也把发现的错误按优先级分为三种：高、中、低：一般是越影响用户接受或使用该产品的错误优 先级越高。 <br /><br />　　但下面，将不对所有的问题进行列举和分析，而只是列出一些显而易见的、容易被项目组忽略的错 误，这些错误可能是容易修改的、或是容易避免的，但是对于测试组或用户来说可能却是非常头痛和不方 便的。 <br /><br />1、形象类问题：---不专业、用户不信任 <br /><br />　　1、不符合用户操作习惯。如，快捷键定义不科学、不实用(键位分布不合理、按键太多，甚至没有快 捷键)。 <br /><br />　　2、不够专业，缺乏基本知识，而又没有高手检查：CMYK(0-255) <br /><br />　　3、界面中英文混杂，经常弹出莫名其妙的信息，而且还拼错单词 <br /><br />　　4、SETUP界面：CopyRight 1994-1996；缺省认为用户使用某种分辨率； <br /><br />　　5、说明书或帮助的排版格式不专业：中英文搭配不对、标点符号全角半角部分、没有排版禁则… <br /><br />　　6、程序名/路径名是程序员的名字、或没有安装程序、或安装程序不完善(丢掉一些必要的模块或文 件) <br /><br />　　7、界面元素参差不齐，文字不能完全显示，TAB时鼠标乱走。 <br /><br />2、可用性问题：---用户无法使用或不方便使用 <br /><br />　　“用户比开发或测试人员在接触界面上要花费更多时间。表面上不重要的方面的影响会变得越来越 大，最终甚至会掩盖了产品得有用得方面。” <br /><br />　　下面是一些用户界面错误的例子： <br /><br />　　1、输入无合法性检查和值域检查，允许用户输入错误的数据类型，并导致不可逆料的后果 <br /><br />　　2、界面中的信息不能及时更新，不能正确反映数据状态，甚至对用户产生错误的误导。如：数据库 中剩余记录个数；参数设置对话框中的预设值 <br /><br />　　下面是一些低效的用户界面的例子： <br /><br />　　1、表达不清或过于模糊的信息提示 <br /><br />　　2、要求用户输入多余的、本来系统可以自己得到的数据。如：服务是否启动，安装后用户要手动修 改某些配置文件。 <br /><br />　　3、为了达到某个设置或对话框，用户必须做许多冗余操作。如，对话框嵌套层次太多。 <br /><br />　　4、不能记忆用户的设置或操作习惯，用户每次进入都需要重新操作一次初始环境。 <br /><br />　　5、使用不完善的功能且不给用户以恰当的提示，如：对于TIF图片的不完全支持；Undo功能的局限 性。 <br /><br />　　6、不经用户确认就对系统或数据进行重大修改 <br /><br />3、稳定性问题：---影响用户正常工作 <br /><br />　　1、不可重现的死机，或不断申请但不完全释放资源，系统性能越来越低 <br /><br />　　2、主系统和子系统使用同样的临界资源而互相不知道。如：使用同样的类名或临时文件名、使用同 样的数据库字段名或登录帐号。 <br /><br />　　3、不能重现的错误，许多与代码中的未初始化变量(在Debug时一般是缺省初始化的)有关，有些与系 统不检查异常情况(如内存申请不成功、网络突然中断或长时间没有响应)有关。 <br /><br />4、其他问题 <br /><br />　　1、文档匮乏：无标准；无新功能使用方法；无版本改动说明。我们不仅要认为没有说明文档的产品 不是是一个完整的产品，也要认为没有说明或没有正确说明的功能是一个没有完全实现的功能，因为用户 无法用得起来。 <br /><br />　　2、运行时不检查内存、数据库或硬盘空间等 <br /><br />　　3、无根据地假设用户环境：硬件/网络环境；有些动态库；安装程序换台机器不正确；假设网络随时 都是连通的 <br /><br />　　4、提供的版本带病毒，或根本无法安装，或没有加密 <br /><br />　　5、提供Debug版本给测试组或测试用户，或项目组与测试组使用不同版本 <br /><br />　　6、用户现场开发和修改，又没有记录和保留 <br /><br />　　7、错误反复出现，改动得不彻底、或版本管理出现混乱 <br /><br />　　8、错误越改越多，改动得不彻底、或改动得不小心 <br /><br />　　9、版本中部分内容和接口倒退 <br /><br />　　10、有些选项永远是灰的；有些选项、菜单项在该灰时还不灰，并且还能状态显示 <br /><br />　　11、资源没有和代码分离，不同语言版本间不能平滑转换 <br /><br />　　12、缺少第三方产品的评估：广告管理系统2000年问题 <br /><br />　　13、产品配合不利，准备当作一套产品或方案推出，互相之间却各不负责，(没有整个项目负责人， 是面向组织的而不是面向产品或方案的)，如：采编+FIT；Gallery+FIT。 <br /><br />…… <br /><br />5、期望项目组关注的一些问题 <br /><br />　　1、修改Bug的人考虑得不够周全，也可能是没有能力考虑周全---不懂全部程序 <br /><br />　　2、问题留给测试组去发现的心态----不仔细测试、不小心修改、甚至不全面改(不彻底) <br /><br />　　3、自己不会用，不了解产品的用法。 <br /><br />　　4、更多地从用户使用的角度考虑设计、编码与测试 <br /><br />四、结语 <br />本文准备得匆忙，可能不够全面和细致。这里只希望我们的产品以高质量和全面为用户着想的态度来进入 世界市场，并垄断某些市场。切记：用户和市场是我们的衣食父母… 
<div class="posted"><a href="http://popsti.itpub.net/category/14356/25007"></a> </div><img src ="http://www.cnitblog.com/charester/aggbug/15100.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/charester/" target="_blank">骗子的天空</a> 2006-08-10 17:20 <a href="http://www.cnitblog.com/charester/articles/15100.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>浅谈测试中的常见问题 </title><link>http://www.cnitblog.com/charester/articles/15098.html</link><dc:creator>骗子的天空</dc:creator><author>骗子的天空</author><pubDate>Thu, 10 Aug 2006 09:15:00 GMT</pubDate><guid>http://www.cnitblog.com/charester/articles/15098.html</guid><wfw:comment>http://www.cnitblog.com/charester/comments/15098.html</wfw:comment><comments>http://www.cnitblog.com/charester/articles/15098.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/charester/comments/commentRss/15098.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/charester/services/trackbacks/15098.html</trackback:ping><description><![CDATA[在测试过程中一般把发现的错误bug按其严重性大致分为4类：致命错误(系统崩溃或挂起、破坏数据)、严重错误(使系统不稳定、产生错误结果、菜单功能无法实现)、一般错误(在完成某一功能时出现的错误，但并不影响该功能的实现)、建议项 (软件不完善或用户使用不方便之处)。<br />下面，我们主要对一些显而易见的、容易被开发者忽略的错误进行列举和分析，这些错误一般很容易避免和修改，但会给用户造成使用上的困难。 <br /><br />一、易用性问题：用户无法使用或不方便使用 <br /><br />　　1、不符合用户操作习惯。如，快捷键定义不科学、不实用，键位分布不合理、按键太多，甚至没有快捷键。 <br />　　2、界面中英文混杂，界面元素参差不齐，文字显示不全<br />　　3、无自动安装程序或安装程序不完善<br />　　4、界面中的信息不能及时刷新，不能正确反映当前数据状态，可能误导用户。如：数据库中剩余记录个数和参数设置对话框中的预设值常常显示为历史值而不是当前值<br />　　5、提示信息意文不明或为原始的英文提示<br />　　6、要求用户输入多余的、本来系统可以自己得到的数据。如：服务是否启动，安装后用户要手动修改某些配置文件。 <br />　　7、某一项功能的冗余操作太多。如：对话框嵌套层次太多<br />　8、不能记忆用户的设置或操作习惯，用户每次进入都需要重新操作一次初始环境。 <br />　　9、对复杂的操作无联机帮助<br />　<br />二、稳定性问题：影响用户正常工作 <br /><br />　　1、程序运行过程中不断申请但不完全释放资源，造成系统性能越来越低，并出现不规律的死机现象 <br />　　2、不能重现的错误，有些与代码中的未初始化变量有关，有些与系统不检查异常情况有关<br />3、对一般性错误的屏蔽能力较差<br />4、对输入的数据没有进行充分并且有效的有效性检查，造成不合要求的数据进入数据库<br /><br />三、其他问题 <br /><br />　　1、用户文档问题：无标准；无新功能使用方法；无版本改动说明。我们不仅要认为没有说明文档的产品不是一个完整的产品，也要认为没有说明或没有正确说明的功能是一个没有完全实现的功能，因为用户无法用得起来。 <br />　　2、兼容性问题：对硬件平台或软件平台的兼容性不好。比如：在这台计算机上可以稳定运行，而在另一台上运行就极不稳定。<br />　　3、数据接口问题：未提供与一些常用的文件格式的接口。如TXT文件、Word文件<br />　　　　　　<br />　　<br />四、结语 <br />有些问题虽然不大，但却是用户接触最多的问题，所以我们应该更多地从用户使用的角度来设计、编码与测试。只有在各个方面表现优秀的软件，才能称之为精品。<br /><img src ="http://www.cnitblog.com/charester/aggbug/15098.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/charester/" target="_blank">骗子的天空</a> 2006-08-10 17:15 <a href="http://www.cnitblog.com/charester/articles/15098.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>常用的功能测试方法</title><link>http://www.cnitblog.com/charester/articles/15096.html</link><dc:creator>骗子的天空</dc:creator><author>骗子的天空</author><pubDate>Thu, 10 Aug 2006 09:12:00 GMT</pubDate><guid>http://www.cnitblog.com/charester/articles/15096.html</guid><wfw:comment>http://www.cnitblog.com/charester/comments/15096.html</wfw:comment><comments>http://www.cnitblog.com/charester/articles/15096.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/charester/comments/commentRss/15096.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/charester/services/trackbacks/15096.html</trackback:ping><description><![CDATA[功能测试就是对产品的各功能进行验证，根据功能测试用例，逐项测试，检查产品是否达到用户要求的功能。常用的测试方法如下：<br />1. 页面链接检查：每一个链接是否都有对应的页面，并且页面之间切换正确。<br />2. 相关性检查：删除/增加一项会不会对其他项产生影响，如果产生影响，这些影响是否都正确。<br />3. 检查按钮的功能是否正确：如update, cancel, delete, save等功能是否正确。<br />4. 字符串长度检查: 输入超出需求所说明的字符串长度的内容, 看系统是否检查字符串长度,会不会出错.<br />5. 字符类型检查: 在应该输入指定类型的内容的地方输入其他类型的内容(如在应该输入整型的地方输入其他字符类型),看系统是否检查字符类型,会否报错.<br />6. 标点符号检查: 输入内容包括各种标点符号,特别是空格,各种引号,回车键.看系统处理是否正确.<br />7. 中文字符处理: 在可以输入中文的系统输入中文,看会否出现乱码或出错.<br />8. 检查带出信息的完整性: 在查看信息和update信息时,查看所填写的信息是不是全部带出.,带出信息和添加的是否一致<br />9. 信息重复: 在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理.<br />10. 检查删除功能:在一些可以一次删除多个信息的地方,不选择任何信息,按”delete”,看系统如何处理,会否出错;然后选择一个和多个信息,进行删除,看是否正确处理.<br />11. 检查添加和修改是否一致: 检查添加和修改信息的要求是否一致,例如添加要求必填的项,修改也应该必填;添加规定为整型的项,修改也必须为整型.<br />12. 检查修改重名:修改时把不能重名的项改为已存在的内容,看会否处理,报错.同时,也要注意,会不会报和自己重名的错.<br />13. 重复提交表单：一条已经成功提交的纪录，back后再提交，看看系统是否做了处理。<br />14. 检查多次使用back键的情况: 在有back的地方,back,回到原来页面,再back,重复多次,看会否出错.<br />15. search检查: 在有search功能的地方输入系统存在和不存在的内容,看search结果是否正确.如果可以输入多个search条件,可以同时添加合理和不合理的条件,看系统处理是否正确.<br />16. 输入信息位置: 注意在光标停留的地方输入信息时,光标和所输入的信息会否跳到别的地方.<br />17. 上传下载文件检查：上传下载文件的功能是否实现，上传文件是否能打开。对上传文件的格式有何规定，系统是否有解释信息，并检查系统是否能够做到。<br />18. 必填项检查：应该填写的项没有填写时系统是否都做了处理，对必填项是否有提示信息，如在必填项前加*<br />19. 快捷键检查：是否支持常用快捷键，如Ctrl+C Ctrl+V Backspace等，对一些不允许输入信息的字段，如选人，选日期对快捷方式是否也做了限制。<br />20. 回车键检查: 在输入结束后直接按回车键,看系统处理如何,会否报错.<br /><img src ="http://www.cnitblog.com/charester/aggbug/15096.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/charester/" target="_blank">骗子的天空</a> 2006-08-10 17:12 <a href="http://www.cnitblog.com/charester/articles/15096.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何维持和提高我们的测试技能 </title><link>http://www.cnitblog.com/charester/articles/15065.html</link><dc:creator>骗子的天空</dc:creator><author>骗子的天空</author><pubDate>Thu, 10 Aug 2006 05:09:00 GMT</pubDate><guid>http://www.cnitblog.com/charester/articles/15065.html</guid><wfw:comment>http://www.cnitblog.com/charester/comments/15065.html</wfw:comment><comments>http://www.cnitblog.com/charester/articles/15065.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/charester/comments/commentRss/15065.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/charester/services/trackbacks/15065.html</trackback:ping><description><![CDATA[ Mike Kelly在他的blog（<a class="" href="http://www.testingreflections.com/node/view/2723">http://www.testingreflections.com/node/view/2723</a><a class="" href="http://www.testingreflections.com/blog/55"></a>）中写了这篇文章，分享了他以及其他的几位测试工程师在IWST会议中讨论得出的一些成果，这里给大家把重点提一下，可以看看国外的测试同行是如何锻炼内功的，希望能有些许参考价值。<br class="" />    通过五个方面的资源来维持和提高测试技能：<br class="" />    1、网站<br class="" />    <a class="" href="http://www.stickyminds.com/">www.Stickyminds.com</a><br class="" />    <a class="" href="http://www.kaner.com/">www.Kaner.com</a><br class="" />    <a class="" href="http://www.testingreflections.com/">www.Testingreflections.com</a><br class="" />    <a class="" href="http://www.jrothman.com/">www.jrothman.com</a><br class="" />    <a class="" href="http://www.perftestplus.com/">www.PerfTestPlus.com</a><br class="" />    2、书籍<br class="" />    Lessons Learned in Software Testing by Kaner, Bach, and Pettichord<br class="" />    Testing Computer Software by Kaner, Falk, and Nguyen<br class="" />    Quality Software Management: Systems Thinking by Weinberg<br class="" />    How to Break Software by Whittaker <br class="" />    Conjectures and Refutations: The Growth of Scientific Knowledge by Popper<br class="" />    3、工具<br class="" />    IBM的Rational工具和RUP<br class="" />    <a class="" href="http://www.watir.com/">Watir</a> 和Ruby<br class="" />    <a class="" href="http://www.owasp.org/">WebGoat</a> <br class="" />    Logic Puzzles<br class="" />    FireFox Web Developer<br />    4、团体<br />    <a href="http://groups.yahoo.com/group/software-testing/">software-testing</a>邮件列表<br />    不同的本地讨论组，如QAI、<span class="caps">RUG、JUG等<br />    <a href="http://www.kaner.com/lawst.htm">Los Altos Style Workshops</a>（注：老外很善于用workshop这种形式）<br />    Toastmasters<br />    <a href="http://www.webgrrls.com/">Webgrrls International</a><br />    5、杂志<br />    Better Software<br />    Software Test and Performance<br />    <span class="caps">CIO<br />    Fast Company<br />    Wired<br />    这里提到的这些资源，我有的使用过，有的则是连听都没听过。那我们是不是也可以思考一下我们中国的测试工程师都是通过什么资源来提高自己的测试技能呢？欢迎大家讨论。</span></span><img src ="http://www.cnitblog.com/charester/aggbug/15065.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/charester/" target="_blank">骗子的天空</a> 2006-08-10 13:09 <a href="http://www.cnitblog.com/charester/articles/15065.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>软件测试学习网站小全 </title><link>http://www.cnitblog.com/charester/articles/15064.html</link><dc:creator>骗子的天空</dc:creator><author>骗子的天空</author><pubDate>Thu, 10 Aug 2006 05:08:00 GMT</pubDate><guid>http://www.cnitblog.com/charester/articles/15064.html</guid><wfw:comment>http://www.cnitblog.com/charester/comments/15064.html</wfw:comment><comments>http://www.cnitblog.com/charester/articles/15064.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/charester/comments/commentRss/15064.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/charester/services/trackbacks/15064.html</trackback:ping><description><![CDATA[
		<div class="postTitle">
				<a id="viewpost1_TitleUrl" href="http://www.cnblogs.com/taker2001/archive/2005/08/23/220833.html">软件测试学习网站小全</a>
		</div>
		<div class="postText">
				<p>
						<a name="msg_8c337b7f62708622">
						</a>以下的网站都是我经常访问、实用的软件测试网站，当然，网上的资­源有如浩瀚大海无边无际，但我认为初学者看看下面这些就足够了­。个人意见仅供参考。 <br /></p>
				<p>1、无忧测试网 51Testing论坛 <br /><a href="http://www.51testing.com/" target="_blank"><font color="#551a8b">http://www.51testing.com</font></a><a href="http://www.51testing.com/cgi-bin/index.php" target="_blank"><font color="#551a8b">http://www.51testing.com/cgi-b<wbr>in/index.php</wbr></font></a><br />国内软件测试行业绝对的NO。1，内容覆盖软件测试以及质量管理­的方方面面，而且还提供Mercury国际认证的培训以及报考服­务，人气很高， 51Testing论坛更是我每天的必修课，论坛­栏目丰富，从[软件测试新手上路]，到[性能自动化测试]；从[­软件测试管理大家谈]到[软件测试职业发展]等，吐血推荐！！！<br /></p>
				<p> 2、测试时代<br /><a href="http://www.testage.net/" target="_blank">http://www.testage.net</a><br />测试时代是一个自由组织，以普及软件测试知识、共享软件测试技术、交流软件测试经验、提高软件测试地位为宗旨。目前的主要活动有：召集北京软件测试交流会、维护测试时代网站、深层测试交流、刊登、发布测试技术资料等等。其中测试资料下载板块非常棒。<br /></p>
				<p>3、oldsidney 學習筆記 <br /><a href="http://www.oldsidney.idv.tw/%E7%AB%99" target="_blank"><font color="#0000cc">http://www.oldsidney.idv.tw/</font></a><br />站长oldsidney，是台湾的软件测试大师级人物，博客堂成员­，这个网站其实是他的个人网志（BLOG），内容极具参考价值，­虽然更新并不快，但文章质量很好，几乎每篇都是经典。他还翻译了­WR、LR、QTP等工具的教程（Tutorial），方便了广­大软件测试爱好者。<br /></p>
				<p>4、天行健-君子以自强不息!<br /><a href="http://blog.51testing.com/index.php?blogId=19" target="_blank">http://blog.51testing.com/index.php?blogId=19</a><br />叶赫华，昵称大张，51testing泰斗，自动化测试专家，51testing软件测试培训讲师。不仅技术了得，而且关心每个学员的职业发展，给我的感觉，他就是我一生中几位伟大的导师之一。他BLOG上那篇“<font size="3"><a title="Permanent Link: 漫谈软件测试工程师与mercury认证" href="http://blog.51testing.com/index.php?op=ViewArticle&amp;articleId=1504&amp;blogId=19" rel="bookmark">漫谈软件测试工程师与mercury认证</a></font>”为无数迷茫的软件测试人指明了方向，产生了深远的影响。<br /> <br /></p>
				<p>5、.::关河@与谁同坐轩 - <br />专注软件测试、软件质量保证::. <br /><a href="http://sitwithwhom.51.net/" target="_blank"><font color="#551a8b">http://sitwithwhom.51.net/</font></a><a href="http://www.guanhe.cn/" target="_blank"><font color="#0000cc">http://www.guanhe.cn</font></a><br />关河，资深软件测试工程师，尤其擅长性能测试，多次在广州、北京­等地的测试交流会上担任嘉宾，传授软件测试知识。更难得可贵的是­，关河先生为人随和，平易近人，我经常通过邮件与他交流，他每封­邮件必复，对我这个初学者非常耐心，我觉得他就是我的良师益友。 <br /></p>
				<p>6、jackei 的测试生活与人文社会读本 <br /><a href="http://jackei.cnblogs.com/jackei,%E9%99%88" target="_blank"><font color="#0000cc">http://jackei.cnblogs.com/jack<wbr>ei</wbr></font></a><br />陈雷，资深软件测试工程师，广州软件测试交流会创始人，他的博客网­站是我最早浏览的软件测试类BLOG，可以说他是我的启蒙老师，­陈大哥很喜欢与人交流，他的BLOG我每天必看。 <br /></p>
				<p>7、Kiki的专栏-我译，我所爱 <br /><a href="http://blog.csdn.net/imlogic" target="_blank"><font color="#551a8b">http://blog.csdn.net/imlogic</font></a><br />KIKI的特长是英文，网站上基本都有翻译的国外软件测试大师的­文章，质量极高，每篇文章都是一篇精彩的论文。 <br /></p>
				<p>其实好的软件测试还有很多，例如测试时代等，我仅仅是抛砖引玉，­更多的还有待朋友们去探索^_^ <br /></p>
		</div>
<img src ="http://www.cnitblog.com/charester/aggbug/15064.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/charester/" target="_blank">骗子的天空</a> 2006-08-10 13:08 <a href="http://www.cnitblog.com/charester/articles/15064.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Junit入门</title><link>http://www.cnitblog.com/charester/articles/15049.html</link><dc:creator>骗子的天空</dc:creator><author>骗子的天空</author><pubDate>Thu, 10 Aug 2006 01:50:00 GMT</pubDate><guid>http://www.cnitblog.com/charester/articles/15049.html</guid><wfw:comment>http://www.cnitblog.com/charester/comments/15049.html</wfw:comment><comments>http://www.cnitblog.com/charester/articles/15049.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/charester/comments/commentRss/15049.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/charester/services/trackbacks/15049.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Need more material about testing Mail me:      AncenChen@gmail.com																		Junit								的入门																						      																		对于										Juni...&nbsp;&nbsp;<a href='http://www.cnitblog.com/charester/articles/15049.html'>阅读全文</a><img src ="http://www.cnitblog.com/charester/aggbug/15049.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/charester/" target="_blank">骗子的天空</a> 2006-08-10 09:50 <a href="http://www.cnitblog.com/charester/articles/15049.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>覆盖率测试用例设计</title><link>http://www.cnitblog.com/charester/articles/15048.html</link><dc:creator>骗子的天空</dc:creator><author>骗子的天空</author><pubDate>Thu, 10 Aug 2006 01:42:00 GMT</pubDate><guid>http://www.cnitblog.com/charester/articles/15048.html</guid><wfw:comment>http://www.cnitblog.com/charester/comments/15048.html</wfw:comment><comments>http://www.cnitblog.com/charester/articles/15048.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/charester/comments/commentRss/15048.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/charester/services/trackbacks/15048.html</trackback:ping><description><![CDATA[
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt">
				<span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'">
						<span style="mso-list: Ignore">
								<font face="Times New Roman">陈培雷  <a href="mailto:AncenChen@gmail.com"><font color="#002c99">AncenChen@gmail.com</font></a></font>
						</span>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt">
				<span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'">
						<span style="mso-list: Ignore">
								<font face="Times New Roman">             每每想多发一些文章在BLOG上，但是苦于没时间，所以这上面更新的很慢。希望朋友们能体谅我苦衷，有大家的鼓励我会更努力的发布一些自己对于测试的心得，信望能和大家多多交流。</font>
						</span>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt">
				<span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'">
						<span style="mso-list: Ignore">
								<font face="Times New Roman">======================================</font>
						</span>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt">
				<span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'">
						<span style="mso-list: Ignore">
								<font face="Times New Roman">1，<span style="FONT: 7pt 'Times New Roman'">  </span></font>
						</span>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">语句覆盖：程序中每个语句必须执行一次</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">
						<img style="WIDTH: 440px; CURSOR: pointer" onclick="javascript:window.open(this.src);" src="http://ancen.shineblog.com/UploadFiles/2006-5/529454800.jpg" onload="javascript:if(this.width&gt;440){this.resized=true;this.style.width=440;}" border="0" resized="true" />
				</span>
		</p>
		<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">
				<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
						<span lang="EN-US">
								<font face="Times New Roman">2</font>
						</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">判定覆盖</span>
				</p>
				<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">
								<img style="WIDTH: 440px; CURSOR: pointer" onclick="javascript:window.open(this.src);" src="http://ancen.shineblog.com/UploadFiles/2006-5/529873132.jpg" onload="javascript:if(this.width&gt;440){this.resized=true;this.style.width=440;}" border="0" resized="true" />
						</span>
				</p>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">
						<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
								<span lang="EN-US">
										<font face="Times New Roman">3</font>
								</span>
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">条件覆盖</span>
						</p>
						<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">第一条件判定判定</span>
								<span lang="EN-US">
										<font face="Times New Roman">:</font>
								</span>
						</p>
						<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">设条件</span>
								<span lang="EN-US">
										<font face="Times New Roman"> A&gt;1 </font>
								</span>
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">取真</span>
								<font face="Times New Roman">
								</font>
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">记为</span>
								<span lang="EN-US">
										<font face="Times New Roman"> T1 </font>
								</span>
						</p>
						<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
								<span lang="EN-US">
										<span style="mso-spacerun: yes">
												<font face="Times New Roman">             </font>
										</span>
								</span>
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">假</span>
								<span lang="EN-US">
										<font face="Times New Roman">
												<span style="mso-spacerun: yes">      </span>
												<u>T1<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?><o:p></o:p></u>
										</font>
								</span>
						</p>
						<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
								<span lang="EN-US">
										<span style="mso-spacerun: yes">
												<font face="Times New Roman">  </font>
										</span>
								</span>
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">条件</span>
								<span lang="EN-US">
										<font face="Times New Roman"> B=0 </font>
								</span>
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">取真</span>
								<font face="Times New Roman">
								</font>
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">记为</span>
								<span lang="EN-US">
										<font face="Times New Roman"> T2 </font>
								</span>
						</p>
						<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
								<span lang="EN-US">
										<span style="mso-spacerun: yes">
												<font face="Times New Roman">             </font>
										</span>
								</span>
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">假</span>
								<span lang="EN-US">
										<font face="Times New Roman">
												<span style="mso-spacerun: yes">      </span>
												<u>T2<o:p></o:p></u>
										</font>
								</span>
						</p>
						<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">第二条件判定</span>
								<span lang="EN-US">
										<font face="Times New Roman">:</font>
								</span>
						</p>
						<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">设条件</span>
								<span lang="EN-US">
										<font face="Times New Roman"> A=2 </font>
								</span>
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">取真</span>
								<font face="Times New Roman">
								</font>
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">记为</span>
								<span lang="EN-US">
										<font face="Times New Roman"> T3 </font>
								</span>
						</p>
						<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
								<span lang="EN-US">
										<span style="mso-spacerun: yes">
												<font face="Times New Roman">             </font>
										</span>
								</span>
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">假</span>
								<span lang="EN-US">
										<font face="Times New Roman">
												<span style="mso-spacerun: yes">      </span>
												<u>T3<o:p></o:p></u>
										</font>
								</span>
						</p>
						<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
								<span lang="EN-US">
										<span style="mso-spacerun: yes">
												<font face="Times New Roman">  </font>
										</span>
								</span>
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">条件</span>
								<span lang="EN-US">
										<font face="Times New Roman"> X&gt;1 </font>
								</span>
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">取真</span>
								<font face="Times New Roman">
								</font>
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">记为</span>
								<span lang="EN-US">
										<font face="Times New Roman"> T4 </font>
								</span>
						</p>
						<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
								<span lang="EN-US">
										<span style="mso-spacerun: yes">
												<font face="Times New Roman">             </font>
										</span>
								</span>
								<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">假</span>
								<span lang="EN-US">
										<font face="Times New Roman">
												<span style="mso-spacerun: yes">      </span>
												<u>T4<o:p></o:p></u>
										</font>
								</span>
						</p>
						<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
								<img style="WIDTH: 440px; CURSOR: pointer" onclick="javascript:window.open(this.src);" src="http://ancen.shineblog.com/UploadFiles/2006-5/529417584.jpg" onload="javascript:if(this.width&gt;440){this.resized=true;this.style.width=440;}" border="0" resized="true" />
						</p>
						<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
						</p>
						<table class="MsoNormalTable" style="WIDTH: 354pt; mso-cellspacing: 0cm; mso-padding-alt: 0cm 0cm 0cm 0cm" cellspacing="0" cellpadding="0" width="472" border="0">
								<tbody>
										<tr style="HEIGHT: 39pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes">
												<td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 0cm; BORDER-TOP: black 1.5pt solid; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1.5pt solid; WIDTH: 89.25pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; HEIGHT: 39pt; BACKGROUND-COLOR: transparent; mso-border-top-alt: 1.5pt; mso-border-left-alt: 1.5pt; mso-border-bottom-alt: .75pt; mso-border-right-alt: .75pt; mso-border-color-alt: black; mso-border-style-alt: solid" width="119">
														<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
																<b>
																		<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">测试用例</span>
																		<span lang="EN-US">
																				<font face="Times New Roman">ABX</font>
																		</span>
																</b>
																<span lang="EN-US">
																		<font face="Times New Roman">
																				<o:p>
																				</o:p>
																		</font>
																</span>
														</p>
												</td>
												<td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 0cm; BORDER-TOP: black 1.5pt solid; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 89.25pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; HEIGHT: 39pt; BACKGROUND-COLOR: transparent; mso-border-top-alt: solid black 1.5pt; mso-border-alt: solid black .75pt" width="119">
														<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
																<b>
																		<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">通过路径</span>
																</b>
																<span lang="EN-US">
																		<o:p>
																		</o:p>
																</span>
														</p>
												</td>
												<td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 0cm; BORDER-TOP: black 1.5pt solid; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 89.25pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; HEIGHT: 39pt; BACKGROUND-COLOR: transparent; mso-border-top-alt: solid black 1.5pt; mso-border-alt: solid black .75pt" width="119">
														<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
																<b>
																		<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">满足的条件</span>
																</b>
																<span lang="EN-US">
																		<o:p>
																		</o:p>
																</span>
														</p>
												</td>
												<td style="BORDER-RIGHT: black 1.5pt solid; PADDING-RIGHT: 0cm; BORDER-TOP: black 1.5pt solid; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 89.25pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; HEIGHT: 39pt; BACKGROUND-COLOR: transparent; mso-border-top-alt: 1.5pt; mso-border-left-alt: .75pt; mso-border-bottom-alt: .75pt; mso-border-right-alt: 1.5pt; mso-border-color-alt: black; mso-border-style-alt: solid" width="119">
														<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
																<b>
																		<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">覆盖分支</span>
																</b>
																<span lang="EN-US">
																		<o:p>
																		</o:p>
																</span>
														</p>
												</td>
										</tr>
										<tr style="HEIGHT: 39pt; mso-yfti-irow: 1">
												<td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 0cm; BORDER-TOP: black 1pt solid; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1.5pt solid; WIDTH: 89.25pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; HEIGHT: 39pt; BACKGROUND-COLOR: transparent; mso-border-left-alt: solid black 1.5pt; mso-border-alt: solid black .75pt" width="119">
														<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
																<font face="Times New Roman">
																		<b>
																				<span lang="EN-US">1<span style="mso-spacerun: yes">  </span>0<span style="mso-spacerun: yes">  </span>3</span>
																		</b>
																		<span lang="EN-US">
																				<o:p>
																				</o:p>
																		</span>
																</font>
														</p>
												</td>
												<td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 0cm; BORDER-TOP: black 1pt solid; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 89.25pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; HEIGHT: 39pt; BACKGROUND-COLOR: transparent; mso-border-alt: solid black .75pt" width="119">
														<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
																<font face="Times New Roman">
																		<b>
																				<span lang="EN-US">abe</span>
																		</b>
																		<span lang="EN-US">
																				<o:p>
																				</o:p>
																		</span>
																</font>
														</p>
												</td>
												<td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 0cm; BORDER-TOP: black 1pt solid; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 89.25pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; HEIGHT: 39pt; BACKGROUND-COLOR: transparent; mso-border-alt: solid black .75pt" width="119">
														<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
																<font face="Times New Roman">
																		<b>
																				<u>
																						<span lang="EN-US">T1</span>
																				</u>
																				<span lang="EN-US">,T2,<u>T3</u>,T4</span>
																		</b>
																		<span lang="EN-US">
																				<o:p>
																				</o:p>
																		</span>
																</font>
														</p>
												</td>
												<td style="BORDER-RIGHT: black 1.5pt solid; PADDING-RIGHT: 0cm; BORDER-TOP: black 1pt solid; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 89.25pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; HEIGHT: 39pt; BACKGROUND-COLOR: transparent; mso-border-right-alt: solid black 1.5pt; mso-border-alt: solid black .75pt" width="119">
														<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
																<font face="Times New Roman">
																		<b>
																				<span lang="EN-US">b,e</span>
																		</b>
																		<span lang="EN-US">
																				<o:p>
																				</o:p>
																		</span>
																</font>
														</p>
												</td>
										</tr>
										<tr style="HEIGHT: 39pt; mso-yfti-irow: 2; mso-yfti-lastrow: yes">
												<td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 0cm; BORDER-TOP: black 1pt solid; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1.5pt solid; WIDTH: 89.25pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1.5pt solid; HEIGHT: 39pt; BACKGROUND-COLOR: transparent; mso-border-top-alt: .75pt; mso-border-left-alt: 1.5pt; mso-border-bottom-alt: 1.5pt; mso-border-right-alt: .75pt; mso-border-color-alt: black; mso-border-style-alt: solid" width="119">
														<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
																<font face="Times New Roman">
																		<b>
																				<span lang="EN-US">2<span style="mso-spacerun: yes">  </span>1<span style="mso-spacerun: yes">  </span>1</span>
																		</b>
																		<span lang="EN-US">
																				<o:p>
																				</o:p>
																		</span>
																</font>
														</p>
												</td>
												<td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 0cm; BORDER-TOP: black 1pt solid; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 89.25pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1.5pt solid; HEIGHT: 39pt; BACKGROUND-COLOR: transparent; mso-border-bottom-alt: solid black 1.5pt; mso-border-alt: solid black .75pt" width="119">
														<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
																<font face="Times New Roman">
																		<b>
																				<span lang="EN-US">abe</span>
																		</b>
																		<span lang="EN-US">
																				<o:p>
																				</o:p>
																		</span>
																</font>
														</p>
												</td>
												<td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 0cm; BORDER-TOP: black 1pt solid; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 89.25pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1.5pt solid; HEIGHT: 39pt; BACKGROUND-COLOR: transparent; mso-border-bottom-alt: solid black 1.5pt; mso-border-alt: solid black .75pt" width="119">
														<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
																<font face="Times New Roman">
																		<b>
																				<span lang="EN-US">T1,<u>T2</u>,T3,<u>T4</u></span>
																		</b>
																		<span lang="EN-US">
																				<o:p>
																				</o:p>
																		</span>
																</font>
														</p>
												</td>
												<td style="BORDER-RIGHT: black 1.5pt solid; PADDING-RIGHT: 0cm; BORDER-TOP: black 1pt solid; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 89.25pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1.5pt solid; HEIGHT: 39pt; BACKGROUND-COLOR: transparent; mso-border-top-alt: .75pt; mso-border-left-alt: .75pt; mso-border-bottom-alt: 1.5pt; mso-border-right-alt: 1.5pt; mso-border-color-alt: black; mso-border-style-alt: solid" width="119">
														<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
																<b>
																		<span lang="EN-US">
																				<font face="Times New Roman">b,e</font>
																		</span>
																</b>
																<span lang="EN-US">
																		<o:p>
																		</o:p>
																</span>
														</p>
												</td>
										</tr>
								</tbody>
						</table>
				</span>
		</span>
<img src ="http://www.cnitblog.com/charester/aggbug/15048.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/charester/" target="_blank">骗子的天空</a> 2006-08-10 09:42 <a href="http://www.cnitblog.com/charester/articles/15048.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>浅谈GUI测试，我的毕业设计</title><link>http://www.cnitblog.com/charester/articles/15047.html</link><dc:creator>骗子的天空</dc:creator><author>骗子的天空</author><pubDate>Thu, 10 Aug 2006 01:41:00 GMT</pubDate><guid>http://www.cnitblog.com/charester/articles/15047.html</guid><wfw:comment>http://www.cnitblog.com/charester/comments/15047.html</wfw:comment><comments>http://www.cnitblog.com/charester/articles/15047.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/charester/comments/commentRss/15047.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/charester/services/trackbacks/15047.html</trackback:ping><description><![CDATA[
		<div class="textbox-title">
				<h4>浅谈GUI测试，我的毕业设计</h4>
				<div class="textbox-label">[ 2006-3-23 17:43:00 | By: Ancen ]</div>
		</div>
		<div class="textbox-content">  作者：陈培雷    Mail:AncenChen@gmail.com 
<p style="TEXT-INDENT: 26.25pt; mso-char-indent-count: 2.5"><span style="FONT-SIZE: 10.5pt; COLOR: #333333; mso-bidi-font-family: Arial"><font face="宋体">计算机应用的日益普及和人机界面的友好，目前绝大部分应用软件都是基于<span lang="EN-US">GUI</span>进行设计开发，所以在产品的测试活动尤其是功能测试活动中，<span lang="EN-US">GUI</span>测试将占到非常大的比率，<span lang="EN-US">GUI</span>测试质量和效率是整个产品质量提升和成本降低的关键。我们知道大部分软件产品都有必不可少的人机交互界面<span lang="EN-US">MMI</span>，而且它的功能也基本上是通过人机交互操作来体现和完成的，所以我们可以说软件产品的<span lang="EN-US">GUI</span>测试在整个产品测试中占有非常重要的地位</font></span></p><span style="FONT-SIZE: 10.5pt; COLOR: #333333; mso-bidi-font-family: Arial"><font face="宋体"><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 26.25pt; mso-char-indent-count: 2.5"><font color="#000000"><span lang="EN-US"><font face="Times New Roman">GUI</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">即</span><span lang="EN-US" style="mso-bidi-font-weight: bold"><font face="Times New Roman">Graphics User Interface </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">图形用户界面，有时也称为</span><span style="mso-bidi-font-weight: bold"><font face="Times New Roman"><span lang="EN-US">WIMP=Window/Icon/Menu/Pointing Device </span></font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">窗口、图标、菜单、指点设备。</span><span lang="EN-US" style="mso-bidi-font-weight: bold"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?><o:p></o:p></span></font></p><p style="TEXT-INDENT: 26.25pt; mso-char-indent-count: 2.5"><font color="#000000"><span lang="EN-US" style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-font-kerning: 1.0pt; mso-bidi-font-weight: bold">GUI</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-bidi-font-weight: bold">测试，顾名思义及对图形用户界面进行测试。</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt">一般来说当一个软件产品完成</span><span lang="EN-US" style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-font-kerning: 1.0pt">GUI</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt">设计后，它的外观架构和</span><span lang="EN-US" style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-font-kerning: 1.0pt">GUI</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt">元素基本就确定了。进入开发测试阶段后，软件开发工程师和测试<span style="mso-bidi-font-weight: bold">工程师也都要通过对</span></span><span lang="EN-US" style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-font-kerning: 1.0pt; mso-bidi-font-weight: bold">GUI</span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-bidi-font-weight: bold">的操作来调测和验证局部的或全局的软件功能</span></font></p><p style="TEXT-INDENT: 26.25pt; mso-char-indent-count: 2.5"><font color="#000000"><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-bidi-font-weight: bold"> </span></font></p><p style="TEXT-INDENT: 25.7pt; mso-char-indent-count: 2.45"><span lang="EN-US" style="FONT-SIZE: 10.5pt; mso-bidi-font-weight: bold">GUI</span><span style="FONT-SIZE: 10.5pt; mso-bidi-font-weight: bold">测试我们可以采用手工和自动化的测试方法。当您在开发一个带有较多功能和较复杂界面的软件产品时，是不是会对繁琐的软件功能进行不断重复地回归测试而感到烦恼和疲惫。当我们会对软件的某些<span lang="EN-US">GUI</span>重复不断地操作以验证某些功能本身的正确性以及对其他相关功能是否造成错误的影响。相信大家对这个阶段所付出的一切无疑会感到枯燥、厌烦和疲惫不堪。所以对于<span lang="EN-US">GUI</span>测试我们一般会使用工具对<span lang="EN-US">GUI</span>进行自动化的测试。</span></p><p style="TEXT-INDENT: 25.7pt; mso-char-indent-count: 2.45"><span style="FONT-SIZE: 10.5pt; mso-bidi-font-weight: bold"> </span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><span lang="EN-US" style="mso-font-kerning: 0pt"><font face="Times New Roman">GUI</font></span></b><b style="mso-bidi-font-weight: normal"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">的自动化测试可以由简入难的成三种类：</span></b><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><font face="Times New Roman">1</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">）纪录回放类：</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">这一类不需要太多的计划，编程和调试。优点在于简单，方便。缺点在于稳定性差，所以脚本运行寿命短，而且与不同配置的兼容性差。同时由于缺少结果的验证部分，基本上找不到什么</span><span lang="EN-US" style="mso-font-kerning: 0pt"><font face="Times New Roman">Bug</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">。可考虑在产品开发接近尾声时，用于尚未自动化的已知</span><span lang="EN-US" style="mso-font-kerning: 0pt"><font face="Times New Roman">Bug</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">的回归检验。</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><br /><font face="Times New Roman">2</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">）测试用例自动化类：</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">这一类是指将需要反复测试或在多种配置下重复测试的用例自动化。基本实现过程通常为：</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><font face="Times New Roman">- </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">设计测试计划</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><font face="Times New Roman">- </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">设计测试用例</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><font face="Times New Roman">- </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">针对每一个用例评估自动化的可行性和经济性</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><font face="Times New Roman">- </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">将决定要自动化的用例作详细步骤分解。</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><font face="Times New Roman">- </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">编写公用步骤，公用资源库（</span><span lang="EN-US" style="mso-font-kerning: 0pt"><font face="Times New Roman">Logging </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">和</span><span lang="EN-US" style="mso-font-kerning: 0pt"><font face="Times New Roman"> exception handling </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">部分是必不可少的）</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><font face="Times New Roman">- </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">编写自动化程序</span><span style="mso-font-kerning: 0pt"><font face="Times New Roman"></font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">（别忘了结果的验证部分）</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><font face="Times New Roman">- </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">调试</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><font face="Times New Roman">- </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">实际运行</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><br /></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">这一类自动化测试最为灵活，也能发现较多的</span><span lang="EN-US" style="mso-font-kerning: 0pt"><font face="Times New Roman">Bug</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">。又能较好的与测试计划相协调。当前多数测试做的比较好的企业都主要使用这种类型的自动化。</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><br /><font face="Times New Roman">3</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">）自动测试类：</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">这一类是指自动生成测试用例并自动运行。这类自动化测试的最大的优点在于它的无限可能性。另外它通常能发现手工测试极难发现的错误。而且一旦实现了这种自动化，其维护费用实际上是大大低于前两类测试的。不过这类测试自动化的初始投入非常高，而且它的效果受其智能化程度的制约也非常大。除非是专业测试公司或是象微软、</span><span lang="EN-US" style="mso-font-kerning: 0pt"><font face="Times New Roman">IBM</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">这类超大型企业，多半都没有实力来研究这类测试自动化。</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">不过从长远来说，只要有较好的工具能将这类自动化的初始投入降下来，这类测试自动化才是软件测试发展的必然方向。</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">这一类测试的基本实现过程通常是：</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><font face="Times New Roman">- </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">购买或开发基本测试自动化框架</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><font face="Times New Roman">- </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">编写必要的接口，钩子，及其他公用资源。</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><font face="Times New Roman">- </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">建立软件、组件、或功能的行为模型</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><font face="Times New Roman">- </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">设立测试目标等参数</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><font face="Times New Roman">- </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">自动生成测试用例及测试计划</span><span lang="EN-US" style="mso-font-kerning: 0pt"><br /><font face="Times New Roman">- </font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt">筛选并运行测试用例</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><strong>在毕业设计使用的自动化测试工具</strong>：WinRunner，本来想用Robot,但是哪个Robot的lisence不能用，所以就只能用WinRunner了</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt"><strong>GUI测试的测试点：</strong></span></p><p><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">图形用户界面（</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> GUI </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">）对软件测试提出了有趣的挑战，因为</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> GUI </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">开发环境有可复用的构件，开发用户界面更加省时而且更加精确。同时，</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> GUI </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">的复杂性也增加了，从而加大了设计和执行测试用例的难度。因为现在</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> GUI </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">设计和实现有了越来越多的类似，所以也就产生了一系列的测试标准。下列问题可以作为常见</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> GUI </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">测试的指南：</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <o:p></o:p></span></p><p><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">窗口：</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">窗口是否基于相关的输入和菜单命令适当地打开？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">窗口能否改变大小、移动和滚动？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">窗口中的数据内容能否用鼠标、功能键、方向键和键盘访问？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">当被覆盖并重新调用后，窗口能否正确地再生？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">需要时能否使用所有窗口相关的功能？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">所有窗口相关的功能是可操作的吗？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">是否有相关的下拉式菜单、工具条、滚动条、对话框、按钮、图标和其他控制可为窗口使用，并适当地显示？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">显示多个窗口时，窗口的名称是否被适当地表示？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">活动窗口是否被适当地加亮？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">如果使用多任务，是否所有的窗口被实时更新？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">多次或不正确按鼠标是否会导致无法预料的副作用？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">窗口的声音和颜色提示和窗口的操作顺序是否符合需求？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">窗口是否正确地被关闭？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <o:p></o:p></span></p><p><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">下拉式菜单和鼠标操作：</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">菜单条是否显示在合适的语境中？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">应用程序的菜单条是否显示系统相关的特性（如时钟显示）？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">下拉式操作能正确工作吗？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">菜单、调色板和工具条是否工作正确？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">是否适当地列出了所有的菜单功能和下拉式子功能？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">是否可以通过鼠标访问所有的菜单功能？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">文本字体、大小和格式是否正确？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥">是否能够用其他的文本命令激活每个菜单功能？</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: ˎ̥"> <br />· </span><span style="FONT-SIZE: 9pt; COLOR: #333333; mso-ascii-font-family: ˎ̥; mso-h