测试ruby中的线程代码
发布时间:2020-12-17 04:03:13 所属栏目:百科 来源:网络整理
导读:我正在为DataMapper编写一个delayed_job克隆.除了工作进程中的线程之外,我已经得到了我认为正在工作和测试的代码.我查看了delayed_job以了解如何测试它,但现在有对该部分代码的测试.下面是我需要测试的代码.想法? (我正在使用rspec BTW) def start say "***
我正在为DataMapper编写一个delayed_job克隆.除了工作进程中的线程之外,我已经得到了我认为正在工作和测试的代码.我查看了delayed_job以了解如何测试它,但现在有对该部分代码的测试.下面是我需要测试的代码.想法? (我正在使用rspec BTW)
def start say "*** Starting job worker #{@name}" t = Thread.new do loop do delay = Update.work_off(self) #this method well tested break if $exit sleep delay break if $exit end clear_locks end trap('TERM') { terminate_with t } trap('INT') { terminate_with t } trap('USR1') do say "Wakeup Signal Caught" t.run end 另见this thread 解决方法
您可以在测试时将工作程序作为子进程启动,等待它完全启动,然后检查输出/发送信号.
我怀疑你可以从Unicorn项目中获得这方面的一些具体测试想法. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |