• 1. 自动化测试技术分享 技术中心--刘东明
  • 2. 何为自动化?01哪些能自动化?02 编写自动化用例中应注意的问题 目前编写的自动化用例介绍05自动化工具介绍03内 容 提 要测试用例编写及测试过程0406
  • 3. 何为自动化?自动化(Automation)广义上来讲,自动化包括一切通过工具(程序)的方式来代替或辅助手工测试的行为都可以看做自动化,包括性能测试工具(loadrunner、jmeter等),或自己所写的一段程序,用于生成1到100个测试数据。狭义上来讲,通过工具记录或编写脚本的方式模拟手工测试的过程,通过回放或运行脚本来执行测试用例,从而代替人工对系统的功能进行验证。 我们测试领域中的自动化,就是“把以人为驱动的测试行为转化为机器执行的一种过程。”
  • 4. 哪些能自动化? 软件需求变动不频繁   测试脚本的稳定性决定了自动化测试的维护成本,如果变动过于频繁,维护成本太高。 项目周期足够长 若项目周期太短,或是紧急上线的新功能,新产品是不适合去用自动化测试的。 自动化测试脚本可重复使用 若自动化脚本利用率不高,则会造成人力成本的浪费。
  • 5. 自动化工具介绍PHPUnit 简介 PHPUnit是一个轻量级的PHP测试框架。它是在PHP5下面对JUnit3系列版本的完整移植,是xUnit测试框架家族的一员(它们都基于模式先锋Kent Beck的设计)。 类似的其他语言的还有JUNIT(java),NUNIT(c#),UNITTEST(python)以及Rspec(Ruby).
  • 6. PHPUNIT的安装 方法一: 使用Pear   运行 pear channel-discover pear.phpunit.de;   pear install phpunit/PHPUnit 方法二 :手动安装   1 从http://pear.phpunit.de/get/下载软件包并解压   2 把解压后的目录加入php.ini中的include_path   3 将脚本pear-phpunit改名为phpunit   4 将phpunit脚本中的@php_bin@替换成php可执行脚本的路径   5 为phpunit脚本增加可执行权限并加入$PATH   6 将PHPUnit/Runner/Version.php中的@package_version@替换成3位 版本号。
  • 7. 测试用例的结构 setBrowser("*chrome"); $this->setBrowserUrl("http://weibo.com/"); }
  • 8. public function testMyTestCase() { //具体测试工作 $this->open("/"); $this->click("css=body"); } public function tearDown() {    //清除工作 $this->selenium->stop();   } } ?>
  • 9. 断言常用的有: assertLocation(判断当前是在正确的页面)、 assertTitle(检查当前页面的title是否正确) assertValue(检查input的值, checkbox或radio,有值为”on”无为”off") assertSelected(检查select的下拉菜单中选中是否正确) assertSelectedOptions(检查下拉菜单中的选项的是否正确) assertText(检查指定元素的文本) assertTextPresent(检查在当前给用户显示的页面上是否有出现指定的文本)
  • 10. assertTextNotPresent(检查在当前给用户显示的页面上是否没有出现指定的文本) assertAttribute(检查当前指定元素的属性的值) assertTable(检查table里的某个cell中的值) assertEditable(检查指定的input是否可以编辑) assertNotEditable(检查指定的input是否不可以编辑) assertAlert(检查是否有产生带指定message的alert对话框) waitForElementPresent (等待检验某元素的存在。为真时,则执行。)
  • 11. Selenium介绍Selenium 是ThroughtWorks 公司一个强大的开源Web 功能测试工具系列, 1. Selenium 可以使用录制工具录制脚本,测试页面。 2. Selenium 可以生成类PHP代码,html 代码,java 代码,ruby 代码等。 3. Selenium 录制工具根据id 属性定位html 元素。 4.Selenium IDE 仅支持Selenium 语言。 5.Selenium RC 支持很多语言,如:PHP,C#,Java,Python,Ruby 等。
  • 12. Selenium+PHPUNIT环境的结合1,安装Firefox,Selenium IDE 插件,Firebug 插件 2, 解压Selenium 的selenium-remote-control 包,得到一个服务器,或者在线安装: pear install phpunit/PHPUnit_Selenium 3,下载Selenium-RC http://selenium.googlecode.com/files/selenium-server-standalone-2.22.0.jar 安装selenium server:只要安装了jdk1.6 或1.7 都可以运行selenium-server,在命令行输入: java -jar selenium-server-standalone-2.22.0.jar
  • 13. 测试用例编写及测试过程测试脚本的录制 用Selenium录制测试操作,并转化成PHPUNIT脚本,保存成对应该的文件。在要检测的地方,加上适当的Assert语句。 运行Selenium Server 服务器 在CMD窗口是运行命令: java -jar selenium-server-standalone-2.22.0.jar 调试测试脚本 另外开一个CMD窗口,进入测试脚本所在目录,运行:phpunit 测试文件名.php
  • 14. 根据运行结果,查找原因。分析一下是测试脚本的原因,或是被测试对象的原因。如果是脚本的原因,修改测试脚本,如果是被测试对象的问题,就查找程序的原因。
  • 15. 编写自动化用例中应注意的问题 测试对象的定位 在WEB级测试的过程中,最麻烦的是测试对象的定位。Selenium有很多定位的方法,请自行学习。有个注意事项:如果要定位新打开窗口中的元素,必须先选定新窗口:selectWindow()。 测试对象的扫描 在测试用例执行的过程中,有的时候由于页面刷新的原因,可能出现找不到的情况,这个时候加些儿必要的Sleep()语句。
  • 16. Selenium 函数和Assert语句的选择 (1) Selenium API函数参考手册 (2)Selenium入门:http://blog.csdn.net/chinabluexfw/article/details/7331359 (3)Assert语句介绍 思想之地: http://be-evil.org/tag/phpunit phpunit -assert系列函数:http://blog.sina.com.cn/s/blog_5d2184eb0100n9z1.html
  • 17. 测试用例编写规范 在测试用例编写的过程中,一定要加上注释。最少要定位到函数级,在关键的语句前一定要加上注释。 扩展资料: 软件测试网:http://www.51testing.com/html/index.html 开源中国社区: http://www.oschina.net/project 未来发展 在测试用例编写完成后,要接入公司现有的测试用例管理框架weilink,汇总运行结果,还可以发给相关人员!
  • 18. 目前编写的自动化用例介绍 关系冒烟测试的自动化 下面请杜杰同学先来介绍自动化测试用例。
  • 19. 谢 谢 大 家!!