广告技术部自动化总体介绍 & 搜索前端自动化实践     公直
Agenda• 广告技术部自动化介绍  – Test Automation  – Automated Test  – Test Code Frameworks  – Test Runner: Toast• 搜索前端自动化实践• Question...
自动化测试• 自动化测试是将以前需要手动完成的测试  工作通过计算机程序的方式来运行的过程;                           --From Wiki• 广告部门自动化测试的2个方法: – 代码调用方式 (api Level)...
自动化测试过程                   运行过程编写过程                   • 被测系统/环境的安装部署• 环境搭建/清理脚本                   • 自动化测试用例的调度运行• 测试代码编写(基于...
自动化测试过程图示
测试工具集•   部署工具;•   单元测试运行工具;•   功能回归测试运行工具;               Service                               start•   Toolbox…          ...
广告系统特点•   分布式部署•   外部依赖•   测试数据格式复杂•   验证方式•   前后端模块•   测试负责人制度
测试框架的选择与支持• API Level (XUnit)  – Gtest/Cppunit/CpptestFramework  – JUnit/MRUnit/PHPUnit• User Interface Level (Black Box V...
Test Case/Code/Run 关系                 Test Code                   SVN     Test Case           Test Runner     Bugfree     ...
Toast http://toast.corp.taoao.com• Toast = Toast Open Automation System Test• Base Goal  – Make test Run easy, open and ef...
Toast Linux/Windows Agent
Toast Scenario: 持续集成测试                         单元测试                         BVT 测试
Toast Scenario: 每日回归测试
测试项目结果http://toast.corp.taobao.com/run/view/id/11387
产品级别每日回归体系• 产品线 ( See http://toast )  – 广告产品  – 搜索  – 数据平台  – 核心系统• 邮件通知
Sample: http://toast/report/index/date/2011-05-30/duration_type/4
搜索前端自动化的实践
Why automation for F2E search?• 每周10+需求上线• 没时间测试旧功能• 稳定很重要(2亿PV)
What we do for F2E automation?• PRD – 只自动化F2E部分逻辑功能 – 可以通过命令来调用 – 运行时间控制在10分钟以内
Big Picture of Web Application• UED  – HTML  – JS  – CSS• F2E  – PHP/Java• Backend  – QP  – iSearch                       ...
Tools & Test Framework• Selenium  – 将浏览器(图形界面)的操作转换成脚本实现• JUnit(4.8.2)  – 将大量cases容易的组织起来,只关心业务
Selenium RC              Windows环境,各种                   浏览器              Socket:host:4444               Linux环境,Java程     ...
RC looks like – Run it
RC looks like – Connect Browser
Java in Linux它是一个脚本,因此容易被其他程序所调度
Multi-RC, Multi-Threads• Similar to Selenium Grid• 20 min. down to 3 min. (about 200 tests)
How it works – Single RC   Test     Test        Test          Selenium RC            Brower             Web App
How it works – Multi RC    Test     Test      Test            类似银行叫号             排队调度 Selenium   Selenium   Selenium    RC...
Take a snapshot - RCs
Take a snapshot – with Toast• http://toast/run/view/id/11540
Reference• http://en.wikipedia.org/wiki/Test_automation• http://toast• http://twiki.corp.taobao.com/bin/view/Taoba  o_AD_Q...
Upcoming SlideShare
Loading in...5
×

广告技术部自动化测试介绍.pdf

896

Published on

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
896
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
37
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

广告技术部自动化测试介绍.pdf

  1. 1. 广告技术部自动化总体介绍 & 搜索前端自动化实践 公直
  2. 2. Agenda• 广告技术部自动化介绍 – Test Automation – Automated Test – Test Code Frameworks – Test Runner: Toast• 搜索前端自动化实践• Question & Answer
  3. 3. 自动化测试• 自动化测试是将以前需要手动完成的测试 工作通过计算机程序的方式来运行的过程; --From Wiki• 广告部门自动化测试的2个方法: – 代码调用方式 (api Level) – 用户接口调用方式 (GUI/Service Tool)
  4. 4. 自动化测试过程 运行过程编写过程 • 被测系统/环境的安装部署• 环境搭建/清理脚本 • 自动化测试用例的调度运行• 测试代码编写(基于某种测试框 • 自动化测试运行结果收集与分析架) • 测试环境的还原
  5. 5. 自动化测试过程图示
  6. 6. 测试工具集• 部署工具;• 单元测试运行工具;• 功能回归测试运行工具; Service start• Toolbox… Configure System Installation (YUM/RPM/Source Code)
  7. 7. 广告系统特点• 分布式部署• 外部依赖• 测试数据格式复杂• 验证方式• 前后端模块• 测试负责人制度
  8. 8. 测试框架的选择与支持• API Level (XUnit) – Gtest/Cppunit/CpptestFramework – JUnit/MRUnit/PHPUnit• User Interface Level (Black Box View) – MMT/STFP (php script test framework) – Selenium/Ruby Watir – Custom Framework(Search Perl/CDN Java/Banner… etc)
  9. 9. Test Case/Code/Run 关系 Test Code SVN Test Case Test Runner Bugfree Toast
  10. 10. Toast http://toast.corp.taoao.com• Toast = Toast Open Automation System Test• Base Goal – Make test Run easy, open and effective. – 测试执行调度工具• Main Feature – 持续集成测试/分布式测试 – 报表 – 开放 API/开源 – 松耦合
  11. 11. Toast Linux/Windows Agent
  12. 12. Toast Scenario: 持续集成测试 单元测试 BVT 测试
  13. 13. Toast Scenario: 每日回归测试
  14. 14. 测试项目结果http://toast.corp.taobao.com/run/view/id/11387
  15. 15. 产品级别每日回归体系• 产品线 ( See http://toast ) – 广告产品 – 搜索 – 数据平台 – 核心系统• 邮件通知
  16. 16. Sample: http://toast/report/index/date/2011-05-30/duration_type/4
  17. 17. 搜索前端自动化的实践
  18. 18. Why automation for F2E search?• 每周10+需求上线• 没时间测试旧功能• 稳定很重要(2亿PV)
  19. 19. What we do for F2E automation?• PRD – 只自动化F2E部分逻辑功能 – 可以通过命令来调用 – 运行时间控制在10分钟以内
  20. 20. Big Picture of Web Application• UED – HTML – JS – CSS• F2E – PHP/Java• Backend – QP – iSearch 20
  21. 21. Tools & Test Framework• Selenium – 将浏览器(图形界面)的操作转换成脚本实现• JUnit(4.8.2) – 将大量cases容易的组织起来,只关心业务
  22. 22. Selenium RC Windows环境,各种 浏览器 Socket:host:4444 Linux环境,Java程 序/脚本
  23. 23. RC looks like – Run it
  24. 24. RC looks like – Connect Browser
  25. 25. Java in Linux它是一个脚本,因此容易被其他程序所调度
  26. 26. Multi-RC, Multi-Threads• Similar to Selenium Grid• 20 min. down to 3 min. (about 200 tests)
  27. 27. How it works – Single RC Test Test Test Selenium RC Brower Web App
  28. 28. How it works – Multi RC Test Test Test 类似银行叫号 排队调度 Selenium Selenium Selenium RC RC RC Brower Brower Brower Web App
  29. 29. Take a snapshot - RCs
  30. 30. Take a snapshot – with Toast• http://toast/run/view/id/11540
  31. 31. Reference• http://en.wikipedia.org/wiki/Test_automation• http://toast• http://twiki.corp.taobao.com/bin/view/Taoba o_AD_QA/Automation• Thanks
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×