反馈 关于 win 平台开发 Ruby 的情况

mobiwolf · 2012年12月11日 · 最后由 chengzhier 回复于 2012年12月20日 · 8945 次阅读

咱们的 wiki 中关于不建议 win 上开发,这块是不是可以考虑一下测试工程师的问题。 很多用 ruby 写测试脚本的人,都是用 win 的。而且有的是必须用 win,要测 ie 的啊。

目前的写法会不会让测试新人觉得不敢学习 ruby 写测试脚本啊?平台都搞不定,更不敢学了。

一个建议,呵呵

虚拟机装个 Linux 连下载顶多一小时搞定

win 系统不顺手,但不影响 ruby 的学习。

用 Windows 没什么问题,根本不会影响 Ruby 学习。

帮同事在 Windows 7 上配置了 Ruby + devkit + gem 在 gem 的管理上比 Debian / Ubuntu 反而省心,为什么就不多说了,明白的自然知道。

#3 楼 @terrywang +1 另外,我看懂了你的头像。

@terrywang 我觉得你可以说说的,呵呵,很多新人,比如我看了就不知道为啥。

#4 楼 @skandhas Ruby China 的人觉悟果然不错;-)

另外 Windows 上用 Sublime Text 2 搞 Ruby 的也不少,没必要非得用 OS X / Linux 操作系统只是个工具,没什么高低贵贱之分,只有顺手与否。

难不成 Mac + Ruby 的人就高了一阶?LMAF

楼上是想说 lmao 么?

同意没有高低贵贱之分,只有不用 Mac 后悔和用了 Mac 更后悔当初为什么不用 Mac 之分

ruby 跟 rails 都没限制开发平台,都是某些 gem 的原因没法在 Windows 中使用

不过反过来,有的 gem 也没法在 Linux、MacOS 中使用,我正在收集这类的 gem 列表

#8 楼 @luikore 跟我说说用 MAC 有多大好处啊,我现在好冲动想要买啊

装个 CygWin 试试。 http://www.cygwin.com/ Win 下模拟 linux 环境

用 cygwin 不如用 vagrant,再配合用个 chef 配置机器各种妥妥的

#10 楼 @lionzixuanyuan

  • retina 屏,爱护眼睛
  • 多点触控的 pad
  • 很多命令是用粗壮的大拇指按 command 键组合出来的,比用孱弱的小指头按 control 键来得轻松
  • 命令行:在 iTerm2 下面用 zsh 完美了,powershell 什么的就是烂泥扶不上墙
  • 不仅能用跨平台编辑器,还能用单平台编辑器 textmate
  • 和 linux 一样:能用 rvm
  • 和 linux 不一样:软件包管理工具 homebrew 是用 ruby 写的
  • ruby 社区用的人多,问 windows 的问题不容易得到靠谱答案
  • 可以以没有 windows 为由拒绝调试 ie 的苦逼工作
  • 装了 wine 后还能跑 windows 程序,例如玩 dota, 算序列号什么的...
  • 另外 mac 的硬件装 windows 的话那个啥体验指数很高...

#13 楼 @luikore 额,话说 retina 屏的贵好多啊,你的是什么型号啊?

貌似大家都推荐使用 linux/Mac 的原因都是在 windows 下装某些 gem 包会出现莫名其妙的的错误吧。处理这些错误时间成本太高。

#14 楼 @lionzixuanyuan

我的是 7 月份的 15 寸底配 (有些人会觉得内存不够), 13 寸 + 二显兼顾便携性也不错

对了还能列几条:

  • NASA 里面全是 Mac
  • Mac 的升级主旨是向未来兼容。LLVM 和 Clang 现在如火如荼,大有超越 GCC 的趋势,C++11 的支持比最新的 GCC 好,Xcode 已经把默认编译器转成 LLVM 了。微软虽然有研究基于 .Net VM 的操作系统,但是向过去兼容的主旨导致不可能革新下来。
  • 微软抵触 C 标准,带有 C99(十几年了都!) 以后特性的很多 C 程序都编译不了,这就是很多 gem 用 nmake+cl 编译不了,只好推荐用 devkit 的原因
  • Linus 讨厌微软,所以 git 不是官方支持 windows 的,用 msysgit 还是会遇到些奇怪问题的,新手遇到这些问题往往不知其中的历史渊源和爱恨情仇结果搞得很糊涂...

不好的地方就是和 windows 的思维模型冲突很大 (控制面板在哪里?), 改变使用习惯也是痛苦的 (我花了一周!)

#16 楼 @luikore 我准备入 13 寸的高配啊,但是没有独显,感觉空落落的

#16 楼 @luikore 你什么时候开始抛弃 win 的?我以为你一开始就不待见它

#18 楼 @fsword 一开始穷啊,破解网吧管理软件装 mysql 有木有!

windows 很方便,没有遇到什么问题,个别无法在 windows 上安装的 gem 可以用 virtubox 安装一个 ubuntu 的 server 版,用 putty 连过去,跟部署环境一致,一切都很方便

#17 楼 @lionzixuanyuan 随便买个烂显示器架双屏...

#21 楼 @blacktulip 肯定得买显示器,不然屏幕太小,现在 21 寸的屏看代码都看不全

#20 楼 @hsiss ... 既然都已经装了虚拟机 ubuntu 了,为何不干脆直接在 ubuntu 里面开发呢

#13 楼 @luikore 基本同意,不过拒绝测试 ie 实在不是什么好主意,如果你是做产品的,兼容性不搞定能放心上线啊? 其实一个虚拟机就搞定了,啥 ie 都不在话下。

#19 楼 @luikore k,又牛又执着啊

#23 楼 @blacktulip 记得有个帖子说 gui 方面 win > mac > linux, cli 方面 linux > mac > win 要么用最好的 gui(windows)+最好的 cli(linux),要么将就着用 mac

我觉得 无论是 MAC 还是 Linux 都无所谓,但是做开发的人,总是要在*nix 系的下面做才是正道。 windows 嘛,那是给一般用户用得,咱们可是开发者

#26 楼 @hsiss GUI win > mac 倒是首次听说,能展开说说或者指点一下出处不?谢谢

#23 楼 @blacktulip 对于命令行控直接用 linux 的命令行是最好的,不过也要一个图形界面支撑的,linux 的图形界面确实还有待改进 另外 linux 下无法用 qq 不要骗自己说不用测试 ie

#28 楼 @blacktulip 我找一下,应该就是 ruby-china 中的

#28 楼 @blacktulip GUI win > mac 确实是我的误读 我现在主要使用 mac 工作,之前一直用 windows,没有觉得有很大差异

@mobiwolf 可以拿具体的问题讨论,在 windows 下 ruby 平台没有什么问题的

还是老话,没钱 linux,有钱 mac。 “可以以没有 windows 为由拒绝调试 ie 的苦逼工作” +1

大家的讨论好复杂,我只是建议一下,因为我老婆的同学,同事有打算学自动化测试的,用的是 watir 框架,ruby 写脚步。我就推荐他们看 rubychina 上的 wiki,然后他们看了,说他们不懂 linux,和 mac,而且他们的工作基本上都是在 win 上,测试对象 ie 为主,老问我 win 能写 ruby 脚本啥的不。我就觉得这个 wiki,对他们可能有一定的偏离,希望能够调整一下。有时候用 ruby 的不一定就一定是开发者,还有测试,产品经理。只是这个意思............

之前在 windows 下确实遇到过不少莫名其妙的问题,在 mac 下就好多了,如果不在乎这些而且能搞定这种问题,在 windows 下开发也没什么问题……<( ̄︶ ̄)>

其实就算是不用 mac,装个 ubuntu 也是很好的选择啊

嗯呢,我就是用的 ubuntu,用的很好,再加上 sublime text2。基本没啥问题。

1,nasa 用 mac?很好奇,怎么知道的

#33 楼 @mobiwolf win 上用 watir 是挺方便的,win 一键安装的用着也可以。 但是如果深入,那说明技术也不错了,我们后来全部把 watir 切换成 selenium,win 上开个 server,所有的测试都可以在 linux 上完成,还集成到了 jenkins。

只是这里用 linux 的比较多,对 win 下的工具集合讨论比较少。公司特别是非研发或者传统企业或者大型企业里面,win 系统用户还是不少的,用 ruby 也挺方便快捷,工具当然不能照搬 linux 下的,但是 win 下相应的东西也不少。我最找几年就是用 ruby 做报告做统计,后来用来做测试之类都在 win 下。

@as181920 你们用的是http://rubygems.org/gems/selenium-webdriver 这个吗?这个和 watir 比较是什么原因让你们替换的呢?

主要是 Windows 命令行太难用了,power-shell 稍微好点。强烈建议用 Windows 环境的看看 http://jbeckwith.com/2012/11/28/5-steps-to-a-better-windows-command-line/

我们准备强给 Windows 学员上 Vagrant 了。Windows 真是问题多多

https://github.com/rails/rails-dev-box

#40 楼 @mobiwolf watir 当初只能本机运行现在不知道了。selenium 只要运行一个 server(比如在 windows 机器上开一个 selenium 服务),其余 ruby 脚本可以远程链接该服务,代码中指定下就可以,然后 ruby 代码可以在任何其它机器运行。这样我们测试脚本可以统一到 linux 维护并集成 jenkins。而且同样的脚本可以换不同浏览器来测试兼容(代码可指定浏览器) gem 具体忘了你查吧,有这种 cs 结构也有一个本机运行的,具体忘了。

我选 windows,原因很简单,dota 就不说了,各种游戏、QQ、各种应用软件,mac 在这方面还是不能和 win 平台比的。我觉得吧,纯属个人偏好,并无贵贱之分。不过还是有很多的 macer 偏自负了。呵呵

智商偏低实在玩不转 Mac 和 Ubuntu 桌面,5 年来一直用 windows 做 rails 开发兼应付日常生活的屌丝码农羞愧飘过。。。。。。

其实吧,原生 ruby 对 Windows 的支持比对其他平台好,标准库里还有 Win32API 呢(没有 CocoaAPI)!比较麻烦的是 Rails,以及多版本管理啥的。

今天查资料的时候偶然在Rubyist Magazine里面发现一个叫做ActiveScriptRuby的 ruby 安装包,最新版是 Ruby-1.9.3-p327 这个安装包支持的 windows 的系统包括「Windows Me, 2000, XP, Vista (95, 98, 98SE)」,各位是不是有些颤抖呢

PS:顺便问一句的是,rvm 支持最低的操作系统版本是多少来着?

win98 出来时,linux 真的还不咋地。不过当时 win98 真是折腾,重装是 3 天 2 头的事 .

#48 楼 @ywjno ActiveScriptRuby 还能弄 HTA (基于 html 的应用程序,远古时代的 XUL...), 在 html 页面里用 <script language="ruby"> 控制行为,不过木有人用...

#50 楼 @luikore 果然是强人,各种东西都有了解

我觉得不仅仅是开发 Ruby,除了开发微软那套东西之外,都应该选择 linux 作为开发平台,因为程序员注定是这样!本人开发工具 archlinux+gvim.

工作之后买 mac!

#53 楼 @wscanf 我早就打算好了,就是没钱!

给自己的 PC 装了虚拟机,学习的时候没有遇到很大的困难,如果在 pc 搞不定是因为平台的原因就到 linux 下做下尝试。工作需要离不开 PC,出门带两台电脑实在难受。 另外....... @skandhas ,@terrywang 开门,查水表了。

测试工程师为什么非要用 win?测 IE 又不是非得把程序也跑在自己的机器上

#52 楼 @simlegate 程序员不能用电脑娱乐吗?非要 linux 吗?极端了,程序员也是普通人

#58 楼 @chengzhier 我说的是选择作为开发平台。

#59 楼 @simlegate sorry 我理解错了

需要 登录 后方可回复, 如果你还没有账号请 注册新账号