黄瓜抢救异常(Ruby / HTTParty)

问题描述 投票:0回答:1

[在运行Cucumber测试时,我只是得到一个异常,我试图找到我可以做的事,但是对此并不走运。

当我在最后一步中发帖时:

When('accept terms of use') do
  until @o == 200
  @o = CadastroApp.sign_term1.code
  sleep 1
  end
end

class CadastroApp
  include HTTParty
   def self.sign_term1
   post("#{$uat_uri}agree/multipleterms",
     body: {
       'ContractsId': $contract1,
       'deviceType': 'Smartphone',
       'Platform': 'ios',
       'Model': 'Iphone XS max',
     }.to_json,
     headers: {
       'Authorization': "Bearer #{$auth_token}",
       'Content-Type': 'application/json'
     })
   end
  end

我收到错误:

52: def self.cucumber_run_with_backtrace_filtering(pseudo_method)
53:   begin
54:     yield
55:   rescue Exception => e
56:     instance_exec_invocation_line = "#{__FILE__}:#{__LINE__ - 2}:in `cucumber_run_with_backtrace_filtering'"
57:     replace_instance_exec_invocation_line!((e.backtrace || []), instance_exec_invocation_line, pseudo_method)
58:     raise e
59:   end
60: end

我不知道这是否有问题,但是我使用了很多“ until @variable == 200”来循环api,直到得到响应代码200。

ruby cucumber httparty
1个回答
0
投票

这是一个MYSQL问题。当我请求API时,MYSQL不会关闭请求,因此当我检查Kubernetes时会出现很多超时。

Exception Caught by LogRequestResponseMiddleware:
1) ----- Exception Type
MySql.Data.MySqlClient.MySqlException
1) ----- Exception Source
MySql.Data
1) ----- Exception TargetSite
MySql.Data.MySqlClient.Driver GetConnection()
1) ----- Exception Message
error connecting: Timeout expired.  The timeout period elapsed prior to obtaining a connection from the pool.  This may have occurred because all pooled connections were in use and max pool size was reached.
Message = error connecting: Timeout expired.  The timeout period elapsed prior to obtaining a connection from the pool.  This may have occurred because all pooled connections were in use and max pool size was reac
hed.

所以我重新发布了API,自动化工作正常。

© www.soinside.com 2019 - 2024. All rights reserved.