知识大全 为Web应用程序创建测试用例的办法二

Posted

篇首语:知识虽宝贵,但更可贵的却在于运用。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 为Web应用程序创建测试用例的办法二相关的知识,希望对你有一定的参考价值。

为Web应用程序创建测试用例的办法二  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  另一个重要的类是 net sourcefe jwebunit TestContext 它为测试创建上下文 可以用这个类来处理像 cookie 会话和授权之类的信息 表 显示了这个类的一些重要方法    >  表 net sourcefe jwebunit TestContext 类的重要方法     下载 jWebUnit 在 Eclipse 中配置 jWebUnit    JWebUnit 是用纯 Java 代码实现的 所以可以以 JAR 文件的形式获得它 (请参阅 参考资料 从中获得下载链接) 在完成下载之后 请按以下步骤在 Eclipse 平台上配置 JWebUnit 库     把下载的文件 jwebunit zip 释放到临时目录中(假设是 C:\\temp)     在 Eclipse 中创建新 Java 项目 将其命名为 jWebUnit     右击 Package Explorer 视图中的 jWebUnit 项目 然后选择 Properties     单击 Java Build Path 单击 Libraries 标签中的 Add External JARs     浏览到 C:\\temp\\jwebunit \\lib 目录 选择这个目录中的所有 JAR 文件     单击 OK     现在可以在 Eclipse 中的 jWebUnit 项目下开发 jWebUnit 测试用例了      构建示例应用程序    现在就可以查看 jWebUnit API 的实际应用了 我将带您研究一个示例应用程序 帮助您更好地理解 jWebUnit 的真正威力 这个应用程序是一个测试用例 用于打开一个 Google 搜索页面并搜索文本 HttpUnit 应用程序需要测试以下场景     打开 Google 主页     确定该页包含一个名为 q 的表单元素 (在 Google 的主页上 名为 q 的文本框是接受用户查询输入的文本框 )应用程序用这个元素输入搜索参数     在搜索文本框中输入字符串 HttpUnit Home 并提交表单     获得结果页 并确定该页面包含的链接中包含文本 HttpUnit Home     单击包含文本 HttpUnit Home 的链接     现在测试场景已经就绪 可以编写 Java 应用程序 用 jWebUnit 实现这些需求了     第一步是声明一个从 WebTestCase 扩展而来的类 如清单 所示     清单 声明测试用例类    public class GoogleTest extends WebTestCase   static String searchLink = ;      正如我在前面提到过的 jWebUnit 要求每个测试用例都是从 WebTestCase 中扩展而来的 searchLink 保存传入的搜索参数 这个值以命令行参数的形式传递给测试用例     下一步是声明入口点 —— main() 方法 如清单 所示     清单 main() 方法    public static void main(String[] args)   searchLink = args[ ];  junit textui TestRunner run(new  TestSuite(GoogleTest class));      main() 方法调用 junit textui TestRunner run() 执行 JTest 测试用例 因为需要运行 GoogleTest 测试用例 所以 作为参数传递给 run() 方法的测试套件采用 GoogleTest class 作为参数     接下来 JTest 调用 setUp() 方法来设置基本 URL 和代理 如清单 所示     清单 设置    public void setUp()   getTestContext() setBaseUrl( );  getTestContext() setProxyName( );  getTestContext() setProxyPort( );      清单 把基本 URL 设置为 这意味着测试用例的启动是相对于这个 URL 的 下面两个语句设置连接到 Internet 的代理主机和代理端口 如果是直接连接到 Internet 那么可以忽略代理设置语句     现在开始浏览站点并输入搜索参数 清单 显示了访问 Web 页面 然后测试所有场景的代码     清单 测试所有场景    public void testSearch()   beginAt( / );  assertFormElementPresent( q );  setFormElement( q HttpUnit );  submit( btnG );  assertLinkPresentWithText(searchLink);  clickLinkWithText(searchLink);      清单 的代码连接到基本 URL 并相对于 / 开始浏览 然后它断定页面中包含一个名为 q 的表单元素 —— q 是 Google 主页上查询输入文本框的名称 下一条语句用值 HttpUnit 设置名为 q 的文本框     再下一条语言提交表单上名为 btnG 的提交按钮 (在 Google 的主页上 名为 btnG 的按钮是标签为 Google Search 的按钮 )表单是在这个对话中提交的 下一页列出搜索结果 在结果页面上 代码首先检查是否有一个链接的文本是 HttpUnit Home 如果该链接不存在 那么测试就以 AssertionFailedError 失败 如果该链接存在 则测试执行的下一个操作是单击链接      运行示例应用程序    现在把示例应用程序投入使用当中     下载示例应用程序 j webunitsample jar     在一个目录中解压缩 j webunitsample jar 例如 如果把它释放到 C:\\temp 中 那么就要把源文件和类文件放在 C:\\temp\\\\jweb\\test 中 而 setclasspth bat 则放在 C:\\temp 中     编辑 setclasspath bat 设置 JAR_BASE 指向包含所有必需 JAR 文件的目录 例如 如果在 C:\\temp 中释放 jwebunit zip 文件 那么将 JAR_BASE 设置为 C:\\temp\\jwebunit \\lib     打开命令行提示符 切换到 C:\\temp 目录     执行 setclasspath bat 这会设置执行测试用例所需的 CLASSPATH     用命令 java jweb test GoogleTest HttpUnit Home 运行应用程序      示例输出    在执行了测试用例之后 会在命令行输出一个测试用例报告 如果测试失败 报告看起来如清单 中所示     清单 带有断言失败的输出    C:\\temp>java jweb test GoogleTest HttpUnit Hwee    F  Time:   There was failure:   ) testSearch( jweb test GoogleTest)junit   framework AssertionFailedError: Link   with text [HttpUnit Hwee] not found in response   at net sourcefe jwebunit WebTester   assertLinkPresentWithText(WebTester java: )  at net sourcefe jwebunit WebTestCase   assertLinkPresentWithText(WebTestCase java: )  at jweb test GoogleTest testSearch(GoogleTest java: )  at sun reflect NativeMethodAccessorImpl invoke (Native Method)  at sun reflect NativeMethodAccessorImpl invoke(Unknown Source)  at sun reflect DelegatingMethodAccessorImpl invoke(Unknown Source)  at jweb test GoogleTest main(GoogleTest java: )    FAILURES!!!  Tests run:  Failures:  Errors:     正如在清单 中可以看到的 可以用 HttpUnit Hwee 作为参数来执行测试用例 这个测试用例遇到断言的地方会失败 因为结果页面中不包含带有这个文本的链接 由此也就产生了junit framework AssertionFailedError     清单 执行时用 HttpUnit Home 作为参数 测试用例找到一个带有这个文本的链接 所以测试通过了     清单 成功测试的输出    C:\\temp>java jweb test GoogleTest HttpUnit Home      Time:     OK ( test)     结束语    本文通过讨论 jWebUnit 框架的一些突出特性和最重要的类 介绍如何用它创建简洁的测试用例 让您对 jWebUnit 框架有一个认识 jWebUnit 还有更多特性可以用在测试用例中 它支持测试 Web 页面中的链接行数 可以对字符串 表或者带有指定标签的表单输入元素是否存在于页面上进行断言 此外 jWebUnit 还可以处理 cookie (例如断言存在某个 cookie 删除 cookie 等 )测试可以对某个文本之后出现的特定文本的链接进行单击 如果想为 Web 应用程序构建快而有效的测试用例 jWebUnit 可能是您最好的朋友 cha138/Article/program/Java/JSP/201311/19121

相关参考

知识大全 自动化测试框架: 用原型编写用例

  最近在考虑自动化测试框架的时候发现原来的想法虽然解决了定位及访问控件的困难但是用例代码却因此对程序实现细节有了很强的依赖这些依赖可能对用例代码的开发带来一些困惑  在思考解决这个问题的时候自然的方

知识大全 JBuilder2005单元测试之捆绑多个用例

JBuilder2005单元测试之捆绑多个用例  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  目

知识大全 用LINQtoSQL创建Web应用系统(一)

用LINQtoSQL创建Web应用系统(一)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在新

知识大全 用LINQtoSQL创建Web应用系统(五)

用LINQtoSQL创建Web应用系统(五)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  设计

知识大全 使用Ant和Tomcat创建Web应用

使用Ant和Tomcat创建Web应用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  应当尽量避

知识大全 Visual C#或Visual Basic创建Web应用程序(上)

VisualC#或VisualBasic创建Web应用程序(上)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起

知识大全 Visual C#或Visual Basic创建Web应用程序(下)

VisualC#或VisualBasic创建Web应用程序(下)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起

知识大全 Ant+JMeter进行Web应用的稳定性测试[3]

Ant+JMeter进行Web应用的稳定性测试[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 Ant+JMeter进行Web应用的稳定性测试[2]

Ant+JMeter进行Web应用的稳定性测试[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 Ant+JMeter进行Web应用的稳定性测试[1]

Ant+JMeter进行Web应用的稳定性测试[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!