appian selenium api failing to identify object when using remote selenium

getting below error 

2023-08-01 15:46:38,708 [main] ERROR com.appiancorp.ps.automatedtest.exception.ExceptionBuilder - Login
org.jruby.exceptions.ArgumentError: (ArgumentError) expected #<Java::OrgOpenqaSelenium::By::ByXPath:0x35216a2e>:Java::OrgOpenqaSelenium::By::ByXPath to respond to #shift
at RUBY.extract_args(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/selenium-webdriver-4.10.0/lib/selenium/webdriver/common/search_context.rb:91) ~[?:?]
at RUBY.findElement(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/selenium-webdriver-4.10.0/lib/selenium/webdriver/common/search_context.rb:58) ~[?:?]
at RUBY.login_with_role(C:/workFolder/RemoteTest/selenium_tests/ruby_methods/tempo_fixture.rb:510) ~[?:?]
at RUBY.create_pr_with_role(C:/workFolder/RemoteTest/selenium_tests/ruby_methods/easi/pr_creation.rb:3) ~[?:?]
at RUBY.<main>(C:/workFolder/RemoteTest/selenium_tests/features/step_definitions/easi/pr_creation_steps.rb:24) ~[?:?]
at org.jruby.RubyBasicObject.instance_exec(org/jruby/RubyBasicObject.java:2610) ~[jruby.jar:?]
at RUBY.cucumber_instance_exec_in(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/glue/invoke_in_world.rb:39) ~[?:?]
at RUBY.cucumber_run_with_backtrace_filtering(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/glue/invoke_in_world.rb:54) ~[?:?]
at RUBY.cucumber_instance_exec_in(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/glue/invoke_in_world.rb:27) ~[?:?]
at RUBY.invoke(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/glue/step_definition.rb:110) ~[?:?]
at RUBY.invoke(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/step_match.rb:31) ~[?:?]
at RUBY.activate(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/step_match.rb:24) ~[?:?]
at RUBY.execute(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/action.rb:24) ~[?:?]

i am using below code to initiate a chrome browser

if $browser_type == 'REMOTE_CHROME'

chrome_options = Selenium::WebDriver::Chrome::Options.new

#chrome_options.add_argument("--headless")
#chrome_options.add_argument("--window-size=1920,1080")
chrome_options.add_argument("--disable-extensions")
chrome_options.add_argument("--disable-gpu")
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument("start-maximized")
chrome_options.add_argument("enable-automation")


chrome_prefs = {
'profile.default_content_settings.popups' => 0.to_s,
'safebrowsing.enabled' => 'true'
}
chrome_options.add_preference('prefs', chrome_prefs)
chrome_options.add_preference("webdriver.chrome.driver", driverHome)

client = Selenium::WebDriver::Remote::Http::Default.new
client.read_timeout = 500 # seconds

$web_driver = Selenium::WebDriver.for :remote, url:"">">http://localhost:4444", options: chrome_options, :http_client => client
$tf.set_web_driver($web_driver)
$driver = $tf.get_settings.get_driver
browser opens and gets the url as well - but fails to proceed further 
and if i use appian selenium api initiated browser - everything works properly
$tf.setup_with_browser($browser_type)
$driver = $tf.get_settings.get_driver
and using cucumber steps tp call api
$tf.login_with_role(role)
 

  Discussion posts and replies are publicly visible

  • caused by: org.jruby.exceptions.ArgumentError: (ArgumentError) expected #<Java::OrgOpenqaSelenium::By::ByXPath:0x34b56a5a>:Java::OrgOpenqaSelenium::By::ByXPath to respond t
    o #shift
    at RUBY.extract_args(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/selenium-webdriver-4.10.0/lib/selenium/webdriver/common/search_context.rb:91)
    at RUBY.findElements(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/selenium-webdriver-4.10.0/lib/selenium/webdriver/common/search_context.rb:73)
    ... 57 more
    Caused by: org.jruby.exceptions.ArgumentError: (ArgumentError) expected #<Java::OrgOpenqaSelenium::By::ByXPath:0x7ef6a063>:Java::OrgOpenqaSelenium::By::ByXPath to respond t
    o #shift
    at RUBY.extract_args(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/selenium-webdriver-4.10.0/lib/selenium/webdriver/common/search_context.rb:91)
    at RUBY.findElement(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/selenium-webdriver-4.10.0/lib/selenium/webdriver/common/search_context.rb:58)
    ... 57 more
    Caused by: org.jruby.exceptions.ArgumentError: (ArgumentError) expected #<Java::OrgOpenqaSelenium::By::ByXPath:0x5e60e639>:Java::OrgOpenqaSelenium::By::ByXPath to respond t
    o #shift
    ... 59 more
    F-----------------------------------------------------------------------------------------F

    (::) failed steps (::)

    message:<<An error has occurred: Login>> (Java::ComAppiancorpPsAutomatedtestException::GenericTestException)
    com.appiancorp.ps.automatedtest.exception.ExceptionBuilder.build(com/appiancorp/ps/automatedtest/exception/ExceptionBuilder.java:79)
    com.appiancorp.ps.automatedtest.tempo.TempoLogin.waitForLogin(com/appiancorp/ps/automatedtest/tempo/TempoLogin.java:205)
    com.appiancorp.ps.automatedtest.tempo.TempoLogin.waitForLogin(com/appiancorp/ps/automatedtest/tempo/TempoLogin.java:191)
    com.appiancorp.ps.automatedtest.fixture.BaseFixture.loginIntoWithUsernameAndPassword(com/appiancorp/ps/automatedtest/fixture/BaseFixture.java:437)
    com.appiancorp.ps.automatedtest.fixture.BaseFixture.loginIntoWithRole(com/appiancorp/ps/automatedtest/fixture/BaseFixture.java:498)
    com.appiancorp.ps.automatedtest.fixture.BaseFixture.loginWithRole(com/appiancorp/ps/automatedtest/fixture/BaseFixture.java:509)
    jdk.internal.reflect.DirectMethodHandleAccessor.invoke(jdk/internal/reflect/DirectMethodHandleAccessor.java:104)
    java.lang.reflect.Method.invoke(java/lang/reflect/Method.java:577)
    org.jruby.javasupport.JavaMethod.invokeDirectWithExceptionHandling(org/jruby/javasupport/JavaMethod.java:315)
    org.jruby.javasupport.JavaMethod.invokeDirect(org/jruby/javasupport/JavaMethod.java:176)
    RUBY.login_with_role(C:/workFolder/RemoteTest/selenium_tests/ruby_methods/tempo_fixture.rb:510)
    RUBY.create_pr_with_role(C:/workFolder/RemoteTest/selenium_tests/ruby_methods/easi/pr_creation.rb:3)
    RUBY.<main>(C:/workFolder/RemoteTest/selenium_tests/features/step_definitions/easi/pr_creation_steps.rb:24)
    org.jruby.RubyBasicObject.yieldUnder(org/jruby/RubyBasicObject.java:1729)
    org.jruby.RubyBasicObject.instance_exec(org/jruby/RubyBasicObject.java:2610)
    org.jruby.RubyBasicObject$INVOKER$i$0$3$instance_exec.call(org/jruby/RubyBasicObject$INVOKER$i$0$3$instance_exec.gen)
    RUBY.cucumber_instance_exec_in(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/glue/invoke_in_world.rb:39)
    RUBY.cucumber_run_with_backtrace_filtering(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/glue/invoke_in_world.rb:54)
    RUBY.cucumber_instance_exec_in(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/glue/invoke_in_world.rb:27)
    RUBY.invoke(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/glue/step_definition.rb:110)
    RUBY.invoke(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/step_match.rb:31)
    RUBY.activate(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/step_match.rb:24)
    org.jruby.RubyProc.call(org/jruby/RubyProc.java:315)
    org.jruby.RubyProc$INVOKER$i$call.call(org/jruby/RubyProc$INVOKER$i$call.gen)
    RUBY.execute(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/action.rb:24)
    RUBY.execute(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/step.rb:32)
    RUBY.execute(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/runner.rb:104)
    RUBY.execute(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/runner.rb:51)
    RUBY.test_step(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/runner.rb:27)
    RUBY.describe_to(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/step.rb:17)
    RUBY.describe_to(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/case.rb:28)
    org.jruby.RubyArray.each(org/jruby/RubyArray.java:1989)
    org.jruby.RubyArray$INVOKER$i$0$0$each.call(org/jruby/RubyArray$INVOKER$i$0$0$each.gen)
    RUBY.describe_to(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/case.rb:27)
    org.jruby.RubyProc.call(org/jruby/RubyProc.java:320)
    org.jruby.RubyProc$INVOKER$i$call.call(org/jruby/RubyProc$INVOKER$i$call.gen)
    RUBY.test_case(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/filters/prepare_world.rb:22)
    org.jruby.RubyProc.call(org/jruby/RubyProc.java:328)
    org.jruby.RubyProc$INVOKER$i$call.call(org/jruby/RubyProc$INVOKER$i$call.gen)
    RUBY.execute(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/around_hook.rb:17)
    RUBY.execute(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/runner.rb:104)
    RUBY.execute(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/runner.rb:51)
    RUBY.around_hook(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/runner.rb:34)
    RUBY.describe_to(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/around_hook.rb:12)
    RUBY.compose_around_hooks(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/case.rb:120)
    org.jruby.RubyProc.call(org/jruby/RubyProc.java:320)
    org.jruby.RubyProc$INVOKER$i$call.call(org/jruby/RubyProc$INVOKER$i$call.gen)
    RUBY.compose_around_hooks(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/case.rb:121)
    RUBY.describe_to(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/case.rb:26)
    org.jruby.RubyProc.call(org/jruby/RubyProc.java:328)
    org.jruby.RubyProc$INVOKER$i$call.call(org/jruby/RubyProc$INVOKER$i$call.gen)
    RUBY.test_case(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/runner.rb:19)
    RUBY.describe_to(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/case.rb:25)
    RUBY.test_case(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/filters/prepare_world.rb:11)
    RUBY.describe_to(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/case.rb:25)
    RUBY.test_case(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/filter.rb:57)
    RUBY.test_case(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/filters/retry.rb:18)
    RUBY.describe_to(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/case.rb:25)
    RUBY.test_case(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/filters/quit.rb:12)
    RUBY.describe_to(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/case.rb:25)
    RUBY.done(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/filters/broadcast_test_run_started_event.rb:21)
    org.jruby.RubyArray.collectArray(org/jruby/RubyArray.java:2779)
    org.jruby.RubyArray.map(org/jruby/RubyArray.java:2813)
    org.jruby.RubyArray$INVOKER$i$0$0$map.call(org/jruby/RubyArray$INVOKER$i$0$0$map.gen)
    RUBY.done(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/filters/broadcast_test_run_started_event.rb:20)
    RUBY.done(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/filter.rb:62)
    RUBY.done(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/filter.rb:62)
    RUBY.done(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/filter.rb:62)
    RUBY.done(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/filter.rb:62)
    RUBY.done(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/filter.rb:62)
    RUBY.done(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/filters/locations_filter.rb:20)
    RUBY.done(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/filter.rb:62)
    RUBY.done(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/test/filters/tag_filter.rb:18)
    RUBY.done(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/compiler.rb:24)
    RUBY.done(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core/gherkin/parser.rb:39)
    RUBY.parse(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core.rb:32)
    RUBY.compile(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-core-3.2.1/lib/cucumber/core.rb:21)
    RUBY.run!(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/runtime.rb:75)
    RUBY.execute!(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/lib/cucumber/cli/main.rb:34)
    RUBY.<main>(C:/jruby-9.4.3.0/lib/ruby/gems/shared/gems/cucumber-3.1.2/bin/cucumber:9)
    org.jruby.Ruby.runInterpreter(org/jruby/Ruby.java:1289)
    org.jruby.Ruby.loadFile(org/jruby/Ruby.java:2985)
    org.jruby.RubyKernel.loadCommon(org/jruby/RubyKernel.java:1135)
    org.jruby.RubyKernel.load(org/jruby/RubyKernel.java:1105)
    org.jruby.RubyKernel$INVOKER$s$load.call(org/jruby/RubyKernel$INVOKER$s$load.gen)
    c_3a_.jruby_minus_9_dot_4_dot_3_dot_0.bin.cucumber.invokeOther9:load(c_3a_/jruby_minus_9_dot_4_dot_3_dot_0/bin/c:\jruby-9.4.3.0\bin\cucumber:25)
    c_3a_.jruby_minus_9_dot_4_dot_3_dot_0.bin.cucumber.<main>(c:\jruby-9.4.3.0\bin\cucumber:25)
    c_3a_.jruby_minus_9_dot_4_dot_3_dot_0.bin.cucumber.run(c_3a_/jruby_minus_9_dot_4_dot_3_dot_0/bin/c:\jruby-9.4.3.0\bin\cucumber)
    java.lang.invoke.MethodHandle.invokeWithArguments(java/lang/invoke/MethodHandle.java:731)
    org.jruby.Ruby.runScript(org/jruby/Ruby.java:1276)
    org.jruby.Ruby.runNormally(org/jruby/Ruby.java:1193)
    org.jruby.Ruby.runNormally(org/jruby/Ruby.java:1175)
    org.jruby.Ruby.runNormally(org/jruby/Ruby.java:1211)
    org.jruby.Ruby.runFromMain(org/jruby/Ruby.java:989)
    org.jruby.Main.doRunFromMain(org/jruby/Main.java:398)
    org.jruby.Main.internalRun(org/jruby/Main.java:282)
    org.jruby.Main.run(org/jruby/Main.java:227)
    org.jruby.Main.main(org/jruby/Main.java:199)