QConShanghai-Fool2Fish-Totoro.pdf

上传人:来看看 文档编号:3330867 上传时间:2019-08-13 格式:PDF 页数:61 大小:2.31MB
返回 下载 相关 举报
QConShanghai-Fool2Fish-Totoro.pdf_第1页
第1页 / 共61页
QConShanghai-Fool2Fish-Totoro.pdf_第2页
第2页 / 共61页
QConShanghai-Fool2Fish-Totoro.pdf_第3页
第3页 / 共61页
QConShanghai-Fool2Fish-Totoro.pdf_第4页
第4页 / 共61页
QConShanghai-Fool2Fish-Totoro.pdf_第5页
第5页 / 共61页
点击查看更多>>
资源描述

《QConShanghai-Fool2Fish-Totoro.pdf》由会员分享,可在线阅读,更多相关《QConShanghai-Fool2Fish-Totoro.pdf(61页珍藏版)》请在三一文库上搜索。

1、totoro 简单易用、稳定的前端单元测试工具 杨周璇支付宝 2013.01 Now fool2fi sh everywhere 1. Why ? 大量基础组件 复杂的业务逻辑 需求来源 1.单元测试框架 2.编写单元测试 NO 关注 运行测试的过程 演示:单元测试代码;手工运行单元测试 参考 存在的问题 复杂难以上手 不够稳定 2. What ? 在真实的浏览器中运行 支持所有的测试框架 基础特性 简单易用、稳定的前端单元测试工具 VS 文档简明,配置简单 实时进度反馈和报告 自动测试覆盖率 代码调试 简单易用、稳定的前端单元测试工具 演示:比较 selenium 和 karma 的配置;u

2、rl runner 简单易用、稳定的前端单元测试工具 简单易用、稳定的前端单元测试工具 配置错误处理 语法错误处理 系统中断处理 演示:错误的runner;语法错误;浏览器中断 简单易用、稳定的前端单元测试工具 Socket 频率控制 Labor 负载均衡 Order 分发 窗口运行测试 浏览器守护程序 3. How ? 3.1 Socket 方案 Socket 工作原理 ServerClient Socket 工作原理 Server localhost:9000 GET connected GET connected GET connected socket ? run test MSG M

3、SG MSG chrome success fi refox success ie success Client socket 不稳定 浏览器崩溃 服务崩溃 异常中断 存在的问题 3.2 Selenium Grid Grid 工作原理 Grid hub DriverGrid node Grid 工作原理 Grid hub DriverGrid node browser = driver.get(chrome) browser.open() MSG Socket + Grid ClientServer (Driver)Grid hubGrid node 启动测试服务启动 Grid 中心 启动 G

4、rid 节点 发送测试请求 运行驱动脚本打开目标浏览器 访问注册页面,成为测试机 分配测试任务 运行测试 返回测试结果返回测试结果 生成测试报告 运行驱动脚本关闭目标浏览器 系统复杂度大幅提升, 使用成本高 强耦合和 Grid 中心,引入了新的不稳定 因素 新的问题 Sea.js 的单元测试又把机器跑 挂了 呃,它今天心情不太好 3.3 Totoro Totoro 工作原理 totorototoro-server Client Server Manager OrderLabor Proxy Adapt browser Labor socketsocket 简单易用、稳定的前端单元测试工具 So

5、cket 频率控制 Labor 负载均衡 Order 分发 窗口运行测试 浏览器守护程序 Socket 频率控制 totorototoro-server Client Server Manager OrderLabor Proxy Adapt browser Labor socketsocket Socket 频率控制 order.js order.js 简单易用、稳定的前端单元测试工具 Socket 频率控制 Labor 负载均衡 Order 分发 窗口运行测试 浏览器守护程序 Labor 负载均衡 totorototoro-server Client Server Manager Orde

6、rLabor Proxy Adapt browser Labor socketsocket Labor 负载均衡 manager.js 简单易用、稳定的前端单元测试工具 Socket 频率控制 Labor 负载均衡 Order 分发 窗口运行测试 浏览器守护程序 Order 分发 totorototoro-server Client Server Manager OrderLabor Proxy Adapt browser Labor socketsocket Order 分发 浏览器缺失 浏览器崩溃 Order 分发 manager.js 简单易用、稳定的前端单元测试工具 Socket 频率

7、控制 Labor 负载均衡 Order 分发 窗口运行测试 浏览器守护程序 窗口运行测试 Labor:Iframe 中运行测试Labor:Window 中运行测试 Server MSG MSG 窗口运行测试 测试效率 浏览器稳定性 测试正确性 窗口运行测试 https:/ sh/blog/issues/3 简单易用、稳定的前端单元测试工具 Socket 频率控制 Labor 负载均衡 Order 分发 窗口运行测试 浏览器守护程序 3.4 Browsers 基础功能 打开(重启)浏览器 关闭浏览器 访问指定页面 增强功能 内存监控 CPU监控 连接监控 REST 接口 基于命令行的浏览器操作方

8、式: /Applications/Firefox.app/Contents/MacOS/ fi refox-bin url https:/developer.mozilla.org/en-US/docs/Mozilla/Command_Line_Options 基本原理 演示:通过命令行打开浏览器 Totoro + Browsers ? Socket + Grid ClientServer (Driver)Grid hubGrid node 启动测试服务启动 Grid 中心 启动 Grid 节点 发送测试请求 运行驱动脚本打开目标浏览器 访问注册页面,成为测试机 分配测试任务 运行测试 返回测

9、试结果返回测试结果 生成测试报告 运行驱动脚本关闭目标浏览器 Totoro + Browsers browserstotoro totoro-server Totoro + Browsers browserstotoro totoro-server 启动测试服务 打开指定浏览器 访问指定页面 访问注册页面 建立 socket 连接 成为测试机 发起测试请求 分配测试任务 返回测试结果返回测试结果 生成测试报告 Totoro + Browsers totorototoro-serverbrowsers 启动测试服务 打开指定浏览器 访问指定页面 发送测试请求 访问注册页面,成为测试机 分配测试任务 运行测试 返回测试结果 返回测试结果 生成测试报告 totoro totoro-server browsers + forever logger 心得 职责清晰 保持简单 做好细节 4. Then ? 继续提升稳定性 日志与监控 开放服务 5. Thanks thrill & queen selenium karma browser-launcher Thank you! Q&A https:/

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/环境 > 装饰装潢


经营许可证编号:宁ICP备18001539号-1