Skip to content

Latest commit

 

History

History
227 lines (133 loc) · 5.39 KB

README.zh.md

File metadata and controls

227 lines (133 loc) · 5.39 KB

totoro

totoro

简单易用、稳定的跨浏览器测试工具。

最新稳定版本:v2.0 Change Log

English edition


0. 特性

  • 在真实的浏览器中运行
  • 支持所有的测试框架
  • 自动测试覆盖率
  • 足够健壮,可用于实战

1. 安装

node 版本要求

>= 0.10.12

从 npm 安装

$ npm install -g totoro

如果安装失败,提示没有权限,你可能需要在命令前面加上 sudo

从淘宝的源上安装

如果官方源不稳定(你懂的),推荐从淘宝的源上安装:

$ npm install -g totoro --registry=http://registry.npm.taobao.org

推荐安装 cnpm,然后用 cnpm install 代替 npm install

从 GitHub 安装

可以体验正在开发中的最新功能

$ git clone https://github.com/totorojs/totoro && cd totoro
$ sudo npm install -g

2. 快速上手

简单起见,我们已经为你准备好了一个可供测试的例子:

注意:测试前请先指定测试服务

$ totoro config --host={{totoroServerHost}}

默认为阿里巴巴集团的内部测试服务,你也可以 启动自己的测试服务

$ git clone https://github.com/totorojs/totoro && cd totoro/examples/simple
$ totoro

如无意外,你将看到如下结果:

totoro-result

  • 测试成功的浏览器会以绿色字符输出显示,失败或超时的浏览器会以红色字符显示,并输出错误详情。

推荐的项目目录结构

project-dir/
  dist/
  src/ or lib/
  tests/ or test/
    runner.html or index.html

其中:

  • 你需要在 project-dir/ 目录运行 totoro 命令
  • dist/ 为编译或打包后的输出目录
  • src/ 或 lib/ 为源码目录
  • tests/ 或 test/ 为测试目录,其中的 runner.html 或 index.html 都能被识别为 runner

3. 命令行配置项

3.1 totoro

-R, --runner

运行测试必须的数据,通常为本地文件路径或 URL。

默认:自动查找当前目录,teststest 子目录下的 runner.htmlindex.html 均可被识别。

-C, --code

方便的 debug 途径。接受 单个 表达式、 JS 文件和 URL。totoro 将返回指定表达式计算的值或 JS 文件中所有 console.log() 输出结果。例如:

$ totoro --code document.body
$ totoro --code "console.log(document.body)"
$ totoro --code examples/code/code.js  // 我们真的准备了这个例子,试试看!

注意: --code--runner 是互斥的选项!

-l, --labors

指定要运行测试的的应用名称,通常为浏览器,多个以逗号分隔。例如:

chrome,firefox,safari,ie  //不指定版本
ie/6,ie/7,ie/8,ie/9  //指定版本

默认:自动选取测试服务端可用的桌面浏览器。

-a, --adapter

测试框架的适配器,用于发送测试报告。接受内置关键字、本地路径和 URL。

已支持的内置关键字有:mocha, jasmine

如指定为 no,则 totoro 不会尝试探测和插入适配器,认为用户会自行加载。

自定义适配器写法可参考 static/adapters/mocha.js

默认:如果 --runner 指定的是本地路径,则会先查看 runner 所在的位置是否有 totoro-adapter.js;如果没找到或者 --runner 指定的是 url 则 totoro-server 会自动扫描 --runner 的内容尝试查找匹配的内置关键字。

-c, --charset

文件编码

默认: 'utf8'

-t, --timeout

客户端超时时间,单位为分钟。

默认:5

-O, --root

如果 --runner 是一个本地文件,totoro 在测试时会起一个临时的 HTTP 服务,该选项指定这个服务的根目录,接受相对路径和绝对路径。

参见更多详情

默认:根据 --runner--adapter 进行猜测。

-H, --host

测试服务 host。

默认:阿里的内部host

-P, --port

测试服务 port。

默认:9999

--no-proxy

不对 runner 指定的 URL 进行域名转换

默认:false

--no-coverage

跳过代码覆盖率检查.

默认:false

3.2 totoro list

显示当前可用的测试浏览器。配置项可通过 totoro list -h 查看。

totoro list

3.3 tororo config

读取或者设置全局配置。配置项可通过 totoro config -h 查看。

读取全局配置

$ totoro config

设置全局配置

$ totoro config --host=10.15.52.87 --port=''

将 server-host 设置为 10.15.52.87,将 server-port 置空。

4. 配置文件

除了命令行配置项和全局配置,你还可以为你的项目建立名为 totoro-config.json 的配置文件,放在项目根目录下。

这 3 种配置方式的优先级为:命令行 > 配置文件 > 全局配置 > 内置默认配置。

以下为一个配置文件的例子:

{
  "browsers": ["chrome", "ie/10.0"],
  "host": "127.0.0.1",
  "port": 9999
}

5. 关于

totoro 的名字来自于宫崎骏导演的奇幻动画电影《龙猫》。