lib/actir/parallel_tests/test/rerunner.rb in actir-1.2.2 vs lib/actir/parallel_tests/test/rerunner.rb in actir-1.2.3

- old
+ new

@@ -65,10 +65,12 @@ puts "[ Re_Run ] - [ #{testfile} -n #{testcase} ] - Left #{times-1} times - in Process[#{process_number}]" cmd += "#{executable} #{testfile} #{address} -n #{testcase};" end #执行cmd,获取执行结果输出 result = execute_command(cmd, process_number, num_processes, options) + #从result中获取执行结果用于生成测试报告 + @result.get_testsuite_detail(result, :rerunner) #先判断是否还是失败,且未满足重试次数 times -= 1 if any_test_failed?(result) && times > 0 #递归 result = re_run(result, process_number, num_processes, options, address, times) @@ -78,13 +80,10 @@ if options[:log] log_str = "[re_run_tests]: \n" + result[:stdout] Actir::ParallelTests::Test::Logger.log(log_str, process_number) end - #从result中获取执行结果用于生成测试报告 - @result.get_testsuite_detail(result, :rerunner) - return result end #从输出内容中获取失败用例文件名以及用例名称 def capture_failures_tests(test_result) @@ -93,31 +92,9 @@ # 过滤报错信息,只需要用例名称和文件名称 failure_tests_hash.each do |testcase, failure_info| failure_tests << testcase end failure_tests - # result_array = test_result[:stdout].split("\n") - # failure_tests_hash = {} - # testcase = "" - # testfile = "" - # result_array.each do |result| - # #取出执行失败的用例文件名称和用例名称 - # if (result =~ failure_tests_name_reg) || (result =~ error_tests_name_reg) - # #范例:"testhehe(TestHehe)" - # testcase = $1 - # end - # if result =~ failure_tests_file_reg - # #范例:"testcode/test_tt/test_hehe.rb:8:in `xxxx'" - # testfile = $1 - # end - # #至于为什么采用testcase => testfile的形式是因为…文件名会重复 - # if testcase != "" && testfile != "" - # failure_tests_hash[testcase] = testfile - # testcase = "" - # testfile = "" - # end - # end - # failure_tests_hash end #组合出最新的执行结果 #只需要将老结果中的failure和error的数据替换成新结果中的数据即可 def combine_tests_results(old_result, new_result)