AICon 上海站|90%日程已就绪,解锁Al未来! 了解详情
写点什么

Vorlon.js:一款 JavaScript 远程调试和测试工具

  • 2015-07-01
  • 本文字数:1063 字

    阅读完需:约 3 分钟

在前不久举行的微软Build 2015 大会上,微软宣布了 vorlon.js 。这是一款用于 JavaScript 远程调试和测试的开源工具。Vorlon.js 创建者之一 David Catuhe 是微软的一名项目经理,同时也是 babylon.js 框架的作者。近日,他撰文介绍了构建 vorlon.js 的原因、细节以及使用方法。

Vorlon.js 可以帮助开发者加载、检查、测试及调试任何设备上使用 Web 浏览器运行的 JavaScript 代码。它可以连接游戏控制台、移动设备、甚至是接入 IoT 的冰箱,连接的设备数量最多可达 50 台。开发者可以在其中一台或所有设备上运行 JavaScript 代码。借助 vorlon.js,开发团队还可以一起调试,每个人编写的代码都对所有人可见。Vorlon.js 开发团队遵循的一个基本原则是:不引入特定于浏览器的原生代码和依赖,设备上只需要运行 JavaScript、HTML、CSS。

Vorlon.js 基于 node.js 和 socket.io 构建,本身就是一个小型的 Web 服务器(node.js 服务器),可以从本机运行,也可以安装在一台服务器上,供整个团队使用。该服务器托管着“仪表盘(dashboard)”页面和一个使用 socket.io 连接该页面及各种设备的服务。它还提供了一个包含所有插件客户端代码的页面。这些代码负责与客户端设备及仪表盘页面通信。连接的设备必须引用该页面。

Vorlon.js 安装过程非常简单,只需下面几步即可完成:

  • 从 npm 安装 vorlon.js 服务器:$ npm i -g vorlon
  • 运行 vorlon.js 服务器:$ vorlon,此时可以在浏览器中打开http://localhost:1337,查看仪表盘页面;
  • 向应用添加 script 标签,启用 vorlon.js:<script src="http://localhost:1337/vorlon.js"></script>

Vorlon.js 具有可扩展性,开发者可以通过插件增加客户端和仪表盘功能。每个插件都分成客户端和仪表盘端两部分。前者用于捕获信息及同设备交互;后者用于在仪表盘页面中生成命令面板。Vorlon.js 本身自带了如下三个插件:

  • Console:该插件有两个功能:一是在仪表盘页面中显示 console.log()、console.warn() 或 console.error() 日志,指导调试;二是允许开发者输入代码同远程页面交互;
  • DOM Exploer:展示远程页面的 DOM;
  • Modernizr:借助 Modernizr 展示受支持的浏览器特性。

开发者也可以构建自己的插件,具体过程参见这里

后续,微软可能会将vorlon.js 集成到浏览器开发工具中。更多信息,请查看官方网站 GitHub 页面


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-07-01 09:488481
用户头像

发布了 1008 篇内容, 共 411.2 次阅读, 收获喜欢 346 次。

关注

评论

发布
暂无评论
发现更多内容

优化工程师逻辑视角下的微信“拍一拍”功能

Earth_Polarbear

人工智能 微信 系统工程 优化逻辑

程序员的晚餐 | 6 月 20 日 随便牛肉和翡翠白玉

清远

美食

SpringIOC 是依赖倒置吗?

yupi

大话设计模式 | 3. SOLID原则

Puran

设计模式

Kafka面试题:基础27问,必须都会的呀!

Java小咖秀

大数据 kafka 分布式 队列 延时消息

如何做好职场印象管理?

石云升

职场 印象管理 职场形象

实现一个redis命令--nonzerodecr

老胡爱分享

redis 源码分析 源码阅读

策略模式解析

Seven七哥

设计模式 策略模式

[架构师训练营] 2 依赖倒置

悬浮

【Golang runtime学习笔记-启动过程分析】

卓丁

初始化 runtime 汇编 Go 语言

终于有人把 java代理 讲清楚了,万字详解!

root

Java jdk 后端 动态代理 cglib

ArrayList哪种循环效率更好你真的清楚吗

root

Java 后端 ArrayList 循环效率 方式

啥是CPU缓存?又如何提高缓存命中率呢?

八两

[安利] 可能会让你爱上书写的工具组合!

猴哥一一 cium

Typora markdown markdown编辑器 玩转写作平台

从拼多多突破阿里和京东两大巨头绞杀,市值破千亿美金来看职业价值链

非著名程序员

程序员 程序人生 职业规划 职业成长

游戏夜读 | RPG的美式和日式

game1night

架构师训练营第三周学习总结

张明森

软件设计原则

yupi

架构师训练营 - 第 2 周命题作业

红了哟

架构师第二周学习总结

陈靓-哲露

LeetCode | 4. Palindrome Number 回文数

Puran

Python C# 算法 LeetCode

在项目中随手把haseMap改成了currenHaseMap差点被公司给开除了

root

Java 后端 BigDecimal金额 Arrays.asList

golang-pprof实战笔记

卓丁

pprof 性能分析 Go 语言

Java操作Excel竟如此简单

生命在于折腾

Java EasyExcel

架构师训练营 - 第2周学习总结

红了哟

架构师训练营第二周作业

陈靓-哲露

区块链系列教程之:比特币的钱包与交易

程序那些事

比特币 区块链 智能合约 钱包 交易

由一次管理后台定时推送功能引发的对 RabbitMQ 延迟队列的思考 (二)

LSJ

Java RabbitMQ 延迟队列 优先级队列

一款跨平台免费的开源 SQL 编辑器和数据库管理器!

JackTian

数据库 sql GitHub 开源 实用工具

Git 基础知识学习

LeoBing

效率思维模式与Zombie Scrum

易成研发中心

敏捷开发

Vorlon.js:一款JavaScript远程调试和测试工具_软件工程_谢丽_InfoQ精选文章