在我最近尝试过的一个基于Eclipse的编辑器(我认为它是RubyMine)中,当选择打开或关闭方法或块的Ruby关键字时,突出显示了相应的open/close关键字.类似于Vim能够突出显示相应的打开/关闭括号的方式.
例如,如果我选择了'def',它会突出显示相应的'end'.它也适用于do/end块.
这非常方便,特别是对于那些长而有时重度嵌套的Rspec文件.
有人知道如何在Vim中实现这一目标吗?
我正在开发一个企业系统,它将在移动客户端和中央服务器之间使用RESTful Web服务.尽可能使用RESTful,让我们说.
我的问题涉及HATEOAS(超媒体作为应用程序状态的引擎),以及在HTTP响应主体中使用自定义xml.
该系统永远不会被公共客户端使用,但我喜欢HATEOAS的想法,即能够在以后修改服务器端资源分配模式,而无需独立地重新配置每个客户端.如果我们决定由于扩展问题我们需要在多个物理盒上扩展服务器功能,没问题,这将反映在客户端(或来自客户端的指令下的服务器)创建新资源时生成的URI中.
我们的业务领域非常具体和不寻常.因此,我想在整个Web服务中为HTTP响应实体主体使用自定义XML,并且客户端将从xml中解析资源URI,以便随时了解它在修改自己的应用程序状态时可以使用的资源位置.我知道这会"打破"HATEAOS的H部分.
例如,当客户端将事务发送到服务器进行处理时,服务器可能在201 HTTP响应主体中包含以下xml片段(作为更大的xml文档的一部分).服务器还会通知客户端新创建的事务资源本身的URI,但这可能只包含在Location HTTP头中.
<resulturi>http://resultserver/results/1234.xml</resulturi>
Run Code Online (Sandbox Code Playgroud)
这真糟糕吗?使用此服务的客户端几乎不可能基于浏览器.超媒体在xml中以纯文本形式提供uris的其他优点是什么?
我想我可以去XHTML,但我们的移动平台上的解析器使用POX更有效率.
我有一个button_to,我想执行PUT操作(只有一件事可以更新有关此资源 - 它将被更新为'已确认',因此没有其他表单字段与触发操作相关联).
这是在我看来(控制器是明确给出的,因为按钮位于属于另一个控制器的视图上):
<%= button_to "Acknowledged", :controller => 'practice_sessions', :id => @practice_session.id, :method => :put %>
Run Code Online (Sandbox Code Playgroud)
在我的路由文件中,资源已被声明为restful资源:
resources :practice_sessions
Run Code Online (Sandbox Code Playgroud)
此资源的控制器具有创建和更新操作,上面的button_to调用create操作.我希望它调用更新操作.
这是通过创建操作触发之前的日志来实现的:
Started POST "/practice_sessions?id=21&method=put" for 127.0.0.1 at 2010-11-17 08:52:46 +0000
Processing by PracticeSessionsController#create as HTML
Parameters: {"authenticity_token"=>"1EW0IlI38d0f4wST5azrCEZVZPfih7i0UvCGSF7eqbc=", "id"=>"21", "method"=>"put"}
Run Code Online (Sandbox Code Playgroud) 恼人的问题.我试图用换行符(\n)替换模型的描述字段中的所有分号字符.数据库是sqlite.该字段是文本类型.
如果我在rails控制台上手动执行此操作(使用\n为换行符键入单个记录的描述),则rails控制台会自动转义\n,并且说明字段将被填充\\n.
如果我使用gsub以编程方式执行此操作,则会出现以下情况:
>> s = Sample.find(:first)
Run Code Online (Sandbox Code Playgroud)
=> ...记录的详细信息......
>> s.description.gsub!(/;/,"\n")
Run Code Online (Sandbox Code Playgroud)
=> ...成功 - 一切看起来都不错,返回值中的新行由\n表示...
>> s.save
=> true
>> reload!
Reloading
=> true
>> s = Sample.find(:first)
Run Code Online (Sandbox Code Playgroud)
=> ...记录的详细信息......
>> s.description
Run Code Online (Sandbox Code Playgroud)
=> ...描述字段中仍然有分号而不是换行符...
AHHHHHH !!!!!!!
我刚刚加入了一个致力于现有Java Web应用程序的团队.我的任务是创建一个自动化集成测试套件,该套件应该在开发人员提交我们的持续集成服务器(TeamCity)时运行,该服务器会自动部署到我们的登台服务器 - 所以测试将针对我们的临时Web应用服务器运行.
我已经阅读了很多关于使用Watir,Selenium和RWebSpec等框架进行自动化集成测试的内容.我已经在所有这些中创建了测试,虽然我更喜欢Watir,但我对任何事情持开放态度.
我不清楚的是如何为应用程序创建一个完整的测试套件,以及如何在执行某些脚本时让该套件完整地执行.我可以愉快地创建各种复杂性的单独测试,但是我对如何将所有内容组合成有用的东西的知识存在差距.
有没有人对如何创建一个完整的测试套件并让它自动执行有任何建议?
谢谢!
testing continuous-integration selenium integration-testing watir