Chrome自动化测试浅析

Chrome自动化测试浅析 By 嫣梦 白盒部分:   和很多国外的产品一样,白盒测试部分比重很大,整个chromium中的自动化测试,白盒部分超过25%或者更多(没有具体计算这个数字),白盒测试大概可以分为两个类别,单元测试和交互测试,它们的测试框架不同,分别是gtest和google mock。 核心工程:   核心自动化工程是automation,在chromium/src/chrome/test/下面,包含大部分自动化测试的代理部分,所有内部测试通过ENABLE_AUTOMATION进行编译的开关。这个代理架构上,是两个UI相关的的架构,一个是对外的chrome界面的自动化操作,一个是内部view的界面库测试。代理的提供者在其他的自动化项目中,automation下... 详情

浏览器测试基础

本文主要介绍浏览器的结构、内核、进程模型以及相关的一些自动化测试的内容,可以作为浏览器测试的基础。 By 嫣梦 主流的浏览器的结构如下图所示,包含七个部分: 用户界面 - 包括地址栏、后退/前进按钮、书签目录等,也就是你所看到的除了用来显示你所请求页面的主窗口之外的其他部分。 浏览器引擎 - 用来查询及操作渲染引擎的接口。 渲染引擎 - 用来显示请求的内容,例如,如果请求内容为html,它负责解析html及css,并将解析后的结果显示出来。 网络 - 用来完成网络调用,例如http请求,它具有平台无关的接口,可以在不同平台上工作。 UI后端 - 用来绘制类似组合选择框及对话框等基本组件,具有不特定于某个平台的通用接口,底层使用操作系统的用户接口。 JS解释器 -... 详情

测试页面JS在异步加载请求时行为的模拟方法

why? 有的时候我们希望校验前端异步加载某些资源加载不到,或者加载到的数据异常的情况下行为如何。 想象如下场景: 某个日常需求主要变更时前端页面和脚本,对应后台服务没有变更。我们主要的测试目标是测试前端脚本和页面行为。此时一个比较重要的异常流是:如果js请求的web接口响应超时,脚本有没有成功地应用default场景?或者,如果响应的jsonp(举例来说)中的某个字段的值非常大(或者难以在后端造这个数据),脚本有没有成功地截断或者按照需求处理? 有如下方式模拟以上场景: 1.在后端代码中断点 优点: a.比较精准 缺点: a.一个人断点的时候影响其他相关人员正常工作; b.需要得到后端系统代码,并熟悉代码,如果只是为了测试前端,效率偏低; c.预发和线上... 详情

YSlow—— 配置ETag

ETag简介 实体标签(Entity Tag),是server和browser确认缓存组件的有效性的一种机制。  个人觉得,如果Expires是时间戳,ETag类似版本戳。 【见下图】: ETag带来的问题 ETag的问题在于,通常用组件的某些属性(大小、时间、等)来构造它,这些属性对于特定的、寄宿了网站的服务器来说是唯一的。 当浏览器从一台服务器上获取了原始组件,之后,又向另外一台不同的服务器发起请求时,ETag是不会匹配的。  对于拥有多台服务器的网站,会大大降低有效性验证的成功率。  如果ETag不匹配,用户就不会按照ETag设计的那样收到更小更快的304响应; 相反,他们会收到普遍的200响应以及组件的所有数据。  如果你只用一台服务器上寄宿网站,这不是什么问题,但如... 详情

回归系统第三方框架接入runner开发

本文以前端单元测试为例,介绍如何接入其他测试框架; 1、Jasmine jasmine是一个有名的javascript开源单元测试框架,提供了对javascript开发者来说相对容易使用的测试语法,可以帮助你轻 松写出自己的单元测试代码。在下载页面直接下载jasmine的源码:http://pivotal.github.com/jasmine 下载后文件包内有一个jasmine.js 和 jasmine-html.js文件,前者是框架的核心文件,后者是异常结果收集及在页面内创建DOM视图,方便测试人员观察结果; 一般情况下,任何测试框架都有自己的测试结果收集类或方法, 我们所做的,就是改变框架本身的测试结果收集方式,自定义一种与回归系统接口相一致的结果类或者... 详情

关于前端测试bug分类和自动化技术选型的想法

1常见前端bug分类 下面按照现象和成因分解了前端相关bug,方便后面进行定位。一部分和前端后端都相关的问题也列举了进来。这些bug都是实际遇到过的,前端问题五花八门,期待大家共同维护这个mm图。 2常用前端测试相关工具 Fiddler:无差别跟踪每一个请求,可以重定向方便调试; firebug+firecookie yslow IETester IE调试器(companion.js等):安装时需要先安装 Microsoft Script Debugger 然后再安装 CompanionJS安装后需要将IE设置中的禁用脚本调试(Internet Explorer)禁用脚本调试(其他)这两个选项去掉 Webstorm:javascript的一个不错的IDE Selenium IDE ... 详情

返回首页 博客 技术交流 产品 期刊下载 关于我们 意见反馈 无障碍

浙ICP备09109183号-14 Copyright © 2003-2015 TaobaoTesting.com 版权所有