我有一个运行测试服的run.haml文件。一切正常,但我想在用户点击导致他到这个haml的链接后立即显示文本“正在启动测试套件:#{params ['run']}”。
点击的链接告诉haml需要执行什么诉讼
%a(href="run?run=#{file}")
现在测试套装完成后会显示所有内容。正在加载run.haml页面,直到脚本完成。
完成测试服的运行需要几分钟。
!!!
%html
%head
%title Running
%body
= "Starting test suite: #{params['run']}"
- output = %x[cd C:\\Program Files\\TestPro\\TestPro Automation Framework410 && ant -lib lib -f "C:\\Program Files\\TestPro\\TestPro Automation Framework410\\Output Files\\builds\\#{params['run']}.xml"]
-#The result is
%br
= output.split("\n")[-2,2].join("<BR>")
= "<br/>"*2
%a(href="/")back to suits list
答案 0 :(得分:1)
嗯,看,我的想法是,在函数调用返回之前,它不会呈现所有内容(无论出于何种原因)。
如果是这种情况,您将需要与加载测试工具页面分开处理该功能的结果 - 因此,您需要使用
调用测试套件这个选择取决于函数(通常)运行所需的时间长度 - 因此,根据复杂性,它可能是BackgrounDRb 之类的好选择, run_later或delayed_job,甚至是自定义守护程序。
最后,您可能会发现this example of using Sinatra with delayed_job有帮助。