2014年值得关注的10个开源项目(上)
一、Appium
Appium是一个开源的自动化测试框架,它主要用于原生移动应用或混合移动应用。
Appium使用WebDriver: JSON wire protocol来驱动iOS应用和Android应用。
注:WebDriver是一个基于Selenium的自动化测试类库,它不是运行于浏览器内的JavaScript程序,而是可以与浏览器交互以及控制。WebDriver的所有实现都是与浏览器相互通信的,RemoteWebDriver服务器应该使用一个通用的连接协议,此协议定义了一套REST风格的API,它使用了基于HTTP协议的JSON格式实现。
要使用Appium,先安装Node.js。
二、Docker
Docker是一个开源的应用容器引擎,让开发者可以打包其应用以及依赖包到一个可移植的容器中,然后发布到任意Linux发行版,也可实现虚拟化。容器完全使用了沙箱机制,相互之间不会有任何接口(类似iPhone的app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架或包依赖。
Docker使用标准化容器的概念,能够容纳软件组件及其依赖关系——二进制文件、类库、配置文件、脚本、Virtualenv、jar包、gem包、原始码等——而且可以在任何支持cgroups的64位(针对x64)Linux内核上运行。这样的容器可以部署在笔记本、分布式基础架构、云端或是其他地方,其对环境的保留适用于广泛的用途:持续部署、Web部署、数据库群集、SOA等。
Docker自身使用Go语言开发,并使用了Linux的cgroup、namespacing、支持写时复制特性的AUFS文件系统以及LXC脚本。
三、exercism.io
exercism.io是新一代的代码审查工具,颠覆了传统的代码评审的观念。
exercism.io基于Ruby语言开发,其后台使用了PostgreSQL数据库。