Best Selenium code snippet using Selenium.WebDriver.Chrome.Features.log
selenium-webdriver@4.1.0.rbi
Source:selenium-webdriver@4.1.0.rbi
...5module Selenium; end6module Selenium::WebDriver7 class << self8 def for(*args); end9 def logger; end10 def root; end11 end12end13class Selenium::WebDriver::ActionBuilder14 include ::Selenium::WebDriver::KeyActions15 include ::Selenium::WebDriver::PointerActions16 def initialize(bridge, mouse, keyboard, async = T.unsafe(nil)); end17 def add_key_input(name); end18 def add_pointer_input(kind, name); end19 def clear_all_actions; end20 def devices; end21 def get_device(name); end22 def key_inputs; end23 def pause(device, duration = T.unsafe(nil)); end24 def pauses(device, number, duration = T.unsafe(nil)); end25 def perform; end26 def pointer_inputs; end27 def release_actions; end28 private29 def add_input(device); end30 def tick(*action_devices); end31end32class Selenium::WebDriver::Alert33 def initialize(bridge); end34 def accept; end35 def dismiss; end36 def send_keys(keys); end37 def text; end38end39module Selenium::WebDriver::Atoms40 private41 def execute_atom(function_name, *arguments); end42 def read_atom(function); end43end44module Selenium::WebDriver::Chrome45 class << self46 def driver_path; end47 def driver_path=(path); end48 def path; end49 def path=(path); end50 end51end52class Selenium::WebDriver::Chrome::Driver < ::Selenium::WebDriver::Driver53 def browser; end54 private55 def devtools_address; end56 def devtools_url; end57 def devtools_version; end58end59Selenium::WebDriver::Chrome::Driver::EXTENSIONS = T.let(T.unsafe(nil), Array)60module Selenium::WebDriver::Chrome::Features61 def available_log_types; end62 def cast_issue_message; end63 def cast_sink_to_use=(name); end64 def cast_sinks; end65 def commands(command); end66 def delete_network_conditions; end67 def launch_app(id); end68 def log(type); end69 def network_conditions; end70 def network_conditions=(conditions); end71 def send_command(command_params); end72 def set_permission(name, value); end73 def start_cast_tab_mirroring(name); end74 def stop_casting(name); end75end76Selenium::WebDriver::Chrome::Features::CHROME_COMMANDS = T.let(T.unsafe(nil), Hash)77class Selenium::WebDriver::Chrome::Options < ::Selenium::WebDriver::Options78 def initialize(profile: T.unsafe(nil), **opts); end79 def add_argument(arg); end80 def add_emulation(**opts); end81 def add_encoded_extension(encoded); end82 def add_extension(path); end83 def add_preference(name, value); end84 def enable_android(package: T.unsafe(nil), serial_number: T.unsafe(nil), use_running_app: T.unsafe(nil), activity: T.unsafe(nil)); end85 def extensions; end86 def extensions=(extensions); end87 def headless!; end88 def logging_prefs; end89 def logging_prefs=(_arg0); end90 def profile; end91 def profile=(_arg0); end92 private93 def binary_path; end94 def camelize?(key); end95 def enable_logging(browser_options); end96 def encode_extension(path); end97 def process_browser_options(browser_options); end98 def validate_extension(path); end99end100Selenium::WebDriver::Chrome::Options::BROWSER = T.let(T.unsafe(nil), String)101Selenium::WebDriver::Chrome::Options::CAPABILITIES = T.let(T.unsafe(nil), Hash)102Selenium::WebDriver::Chrome::Options::KEY = T.let(T.unsafe(nil), String)103class Selenium::WebDriver::Chrome::Profile104 include ::Selenium::WebDriver::ProfileHelper105 extend ::Selenium::WebDriver::ProfileHelper::ClassMethods106 def initialize(model = T.unsafe(nil)); end107 def [](key); end108 def []=(key, value); end109 def add_encoded_extension(encoded); end110 def add_extension(path); end111 def as_json(*_arg0); end112 def directory; end113 def layout_on_disk; end114 private115 def prefs; end116 def prefs_file_for(dir); end117 def read_model_prefs; end118 def write_prefs_to(dir); end119end120class Selenium::WebDriver::Chrome::Service < ::Selenium::WebDriver::Service121 private122 def extract_service_args(driver_opts); end123end124Selenium::WebDriver::Chrome::Service::DEFAULT_PORT = T.let(T.unsafe(nil), Integer)125Selenium::WebDriver::Chrome::Service::EXECUTABLE = T.let(T.unsafe(nil), String)126Selenium::WebDriver::Chrome::Service::MISSING_TEXT = T.let(T.unsafe(nil), String)127Selenium::WebDriver::Chrome::Service::SHUTDOWN_SUPPORTED = T.let(T.unsafe(nil), TrueClass)128class Selenium::WebDriver::DevTools129 def initialize(url:); end130 def callbacks; end131 def close; end132 def method_missing(method, *_args); end133 def send_cmd(method, **params); end134 private135 def attach_socket_listener; end136 def callback_thread(params); end137 def error_message(error); end138 def incoming_frame; end139 def next_id; end140 def process_frame(frame); end141 def process_handshake; end142 def respond_to_missing?(method, *_args); end143 def socket; end144 def start_session; end145 def wait; end146 def ws; end147end148class Selenium::WebDriver::DevTools::ConsoleEvent149 def initialize(type:, timestamp:, args:); end150 def args; end151 def args=(_arg0); end152 def timestamp; end153 def timestamp=(_arg0); end154 def type; end155 def type=(_arg0); end156end157class Selenium::WebDriver::DevTools::ExceptionEvent158 def initialize(description:, timestamp:, stacktrace:); end159 def description; end160 def description=(_arg0); end161 def stacktrace; end162 def stacktrace=(_arg0); end163 def timestamp; end164 def timestamp=(_arg0); end165end166class Selenium::WebDriver::DevTools::MutationEvent167 def initialize(element:, attribute_name:, current_value:, old_value:); end168 def attribute_name; end169 def attribute_name=(_arg0); end170 def current_value; end171 def current_value=(_arg0); end172 def element; end173 def element=(_arg0); end174 def old_value; end175 def old_value=(_arg0); end176end177class Selenium::WebDriver::DevTools::PinnedScript178 def initialize(script); end179 def callable; end180 def devtools_identifier; end181 def devtools_identifier=(_arg0); end182 def key; end183 def key=(_arg0); end184 def remove; end185 def script; end186 def script=(_arg0); end187 def to_json(*_arg0); end188end189Selenium::WebDriver::DevTools::RESPONSE_WAIT_INTERVAL = T.let(T.unsafe(nil), Float)190Selenium::WebDriver::DevTools::RESPONSE_WAIT_TIMEOUT = T.let(T.unsafe(nil), Integer)191class Selenium::WebDriver::DevTools::Request192 def initialize(id:, url:, method:, headers:, post_data:); end193 def ==(other); end194 def headers; end195 def headers=(_arg0); end196 def id; end197 def inspect; end198 def method; end199 def method=(_arg0); end200 def post_data; end201 def post_data=(_arg0); end202 def url; end203 def url=(_arg0); end204 class << self205 def from(id, params); end206 end207end208class Selenium::WebDriver::DevTools::Response209 def initialize(id:, code:, body:, headers:); end210 def ==(other); end211 def body; end212 def body=(_arg0); end213 def code; end214 def code=(_arg0); end215 def headers; end216 def headers=(_arg0); end217 def id; end218 def inspect; end219 class << self220 def from(id, encoded_body, params); end221 end222end223class Selenium::WebDriver::Dimension < ::Struct224 def height; end225 def height=(_); end226 def width; end227 def width=(_); end228 class << self229 def [](*_arg0); end230 def inspect; end231 def keyword_init?; end232 def members; end233 def new(*_arg0); end234 end235end236class Selenium::WebDriver::Driver237 include ::Selenium::WebDriver::SearchContext238 include ::Selenium::WebDriver::TakesScreenshot239 def initialize(bridge: T.unsafe(nil), listener: T.unsafe(nil), **opts); end240 def [](sel); end241 def action; end242 def all(*args); end243 def browser; end244 def capabilities; end245 def close; end246 def current_url; end247 def execute_async_script(script, *args); end248 def execute_script(script, *args); end249 def first(*args); end250 def get(url); end251 def inspect; end252 def keyboard; end253 def manage; end254 def mouse; end255 def navigate; end256 def page_source; end257 def quit; end258 def ref; end259 def script(script, *args); end260 def status; end261 def switch_to; end262 def title; end263 def window_handle; end264 def window_handles; end265 private266 def add_extensions(browser); end267 def bridge; end268 def create_bridge(**opts); end269 def generate_capabilities(cap_array); end270 def screenshot; end271 def service_url(opts); end272 class << self273 def for(browser, opts = T.unsafe(nil)); end274 end275end276module Selenium::WebDriver::DriverExtensions; end277module Selenium::WebDriver::DriverExtensions::DownloadsFiles278 def download_path=(path); end279end280module Selenium::WebDriver::DriverExtensions::FullPageScreenshot281 def save_full_page_screenshot(path); end282 private283 def full_screenshot; end284end285module Selenium::WebDriver::DriverExtensions::HasAddons286 def install_addon(path, temporary = T.unsafe(nil)); end287 def uninstall_addon(id); end288end289module Selenium::WebDriver::DriverExtensions::HasApplePermissions290 def permissions; end291 def permissions=(permissions); end292end293module Selenium::WebDriver::DriverExtensions::HasAuthentication294 def register(username:, password:, uri: T.unsafe(nil)); end295 private296 def auth_handlers; end297 def authenticate(request_id, url); end298end299module Selenium::WebDriver::DriverExtensions::HasCDP300 def execute_cdp(cmd, **params); end301end302module Selenium::WebDriver::DriverExtensions::HasCasting303 def cast_issue_message; end304 def cast_sink_to_use=(name); end305 def cast_sinks; end306 def start_cast_tab_mirroring(name); end307 def stop_casting(name); end308end309module Selenium::WebDriver::DriverExtensions::HasContext310 def context; end311 def context=(value); end312end313module Selenium::WebDriver::DriverExtensions::HasDebugger314 def attach_debugger; end315end316module Selenium::WebDriver::DriverExtensions::HasDevTools317 def devtools; end318end319module Selenium::WebDriver::DriverExtensions::HasLaunching320 def launch_app(id); end321end322module Selenium::WebDriver::DriverExtensions::HasLocation323 def location; end324 def location=(*_arg0); end325 def set_location; end326end327module Selenium::WebDriver::DriverExtensions::HasLogEvents328 include ::Selenium::WebDriver::Atoms329 def on_log_event(kind, &block); end330 private331 def log_console_events; end332 def log_exception_events; end333 def log_listeners; end334 def log_mutation_event(params); end335 def log_mutation_events; end336 def mutation_listener; end337end338Selenium::WebDriver::DriverExtensions::HasLogEvents::KINDS = T.let(T.unsafe(nil), Array)339module Selenium::WebDriver::DriverExtensions::HasLogs340 def logs; end341end342module Selenium::WebDriver::DriverExtensions::HasNetworkConditions343 def delete_network_conditions; end344 def network_conditions; end345 def network_conditions=(conditions); end346end347module Selenium::WebDriver::DriverExtensions::HasNetworkConnection348 def network_connection_type; end349 def network_connection_type=(*_arg0); end350end351module Selenium::WebDriver::DriverExtensions::HasNetworkInterception352 def intercept(&block); end353 private354 def fetch_response_body(id); end355 def intercept_request(id, params, &block); end356 def intercept_response(id, params); end357 def pending_response_requests; end358end359module Selenium::WebDriver::DriverExtensions::HasPermissions360 def add_permission(name, value); end361 def add_permissions(opt); end362end363module Selenium::WebDriver::DriverExtensions::HasPinnedScripts364 def pin_script(script); end365 def pinned_scripts; end366 def unpin_script(script); end367end368module Selenium::WebDriver::DriverExtensions::HasRemoteStatus369 def remote_status; end370end371module Selenium::WebDriver::DriverExtensions::HasSessionId372 def session_id; end373end374module Selenium::WebDriver::DriverExtensions::HasWebStorage375 def local_storage; end376 def session_storage; end377end378module Selenium::WebDriver::DriverExtensions::PrintsPage379 def print_page(**options); end380 def save_print_page(path, **options); end381end382module Selenium::WebDriver::DriverExtensions::UploadsFiles383 def file_detector=(detector); end384end385module Selenium::WebDriver::Edge386 class << self387 def path; end388 def path=(path); end389 end390end391class Selenium::WebDriver::Edge::Driver < ::Selenium::WebDriver::Chrome::Driver392 def browser; end393 private394 def devtools_address; end395end396module Selenium::WebDriver::Edge::Features397 include ::Selenium::WebDriver::Chrome::Features398 def commands(command); end399end400Selenium::WebDriver::Edge::Features::EDGE_COMMANDS = T.let(T.unsafe(nil), Hash)401class Selenium::WebDriver::Edge::Options < ::Selenium::WebDriver::Chrome::Options402 protected403 def enable_logging(browser_options); end404 private405 def binary_path; end406end407Selenium::WebDriver::Edge::Options::BROWSER = T.let(T.unsafe(nil), String)408Selenium::WebDriver::Edge::Options::KEY = T.let(T.unsafe(nil), String)409class Selenium::WebDriver::Edge::Profile < ::Selenium::WebDriver::Chrome::Profile; end410class Selenium::WebDriver::Edge::Service < ::Selenium::WebDriver::Chrome::Service; end411Selenium::WebDriver::Edge::Service::DEFAULT_PORT = T.let(T.unsafe(nil), Integer)412Selenium::WebDriver::Edge::Service::EXECUTABLE = T.let(T.unsafe(nil), String)413Selenium::WebDriver::Edge::Service::MISSING_TEXT = T.let(T.unsafe(nil), String)414Selenium::WebDriver::Edge::Service::SHUTDOWN_SUPPORTED = T.let(T.unsafe(nil), TrueClass)415class Selenium::WebDriver::Element416 include ::Selenium::WebDriver::SearchContext417 include ::Selenium::WebDriver::TakesScreenshot418 def initialize(bridge, id); end419 def ==(other); end420 def [](name); end421 def accessible_name; end422 def all(*args); end423 def aria_role; end424 def as_json(*_arg0); end425 def attribute(name); end426 def clear; end427 def click; end428 def css_value(prop); end429 def displayed?; end430 def dom_attribute(name); end431 def enabled?; end432 def eql?(other); end433 def first(*args); end434 def hash; end435 def inspect; end436 def location; end437 def location_once_scrolled_into_view; end438 def property(name); end439 def rect; end440 def ref; end441 def selected?; end442 def send_key(*args); end443 def send_keys(*args); end444 def shadow_root; end445 def size; end446 def style(prop); end447 def submit; end448 def tag_name; end449 def text; end450 def to_json(*_arg0); end451 private452 def bridge; end453 def screenshot; end454 def selectable?; end455end456Selenium::WebDriver::Element::ELEMENT_KEY = T.let(T.unsafe(nil), String)457module Selenium::WebDriver::Error458 class << self459 def for_error(error); end460 end461end462class Selenium::WebDriver::Error::DetachedShadowRootError < ::Selenium::WebDriver::Error::WebDriverError; end463class Selenium::WebDriver::Error::ElementClickInterceptedError < ::Selenium::WebDriver::Error::WebDriverError; end464class Selenium::WebDriver::Error::ElementNotInteractableError < ::Selenium::WebDriver::Error::WebDriverError; end465class Selenium::WebDriver::Error::InsecureCertificateError < ::Selenium::WebDriver::Error::WebDriverError; end466class Selenium::WebDriver::Error::InvalidArgumentError < ::Selenium::WebDriver::Error::WebDriverError; end467class Selenium::WebDriver::Error::InvalidCookieDomainError < ::Selenium::WebDriver::Error::WebDriverError; end468class Selenium::WebDriver::Error::InvalidElementStateError < ::Selenium::WebDriver::Error::WebDriverError; end469class Selenium::WebDriver::Error::InvalidSelectorError < ::Selenium::WebDriver::Error::WebDriverError; end470class Selenium::WebDriver::Error::InvalidSessionIdError < ::Selenium::WebDriver::Error::WebDriverError; end471class Selenium::WebDriver::Error::JavascriptError < ::Selenium::WebDriver::Error::WebDriverError; end472class Selenium::WebDriver::Error::MoveTargetOutOfBoundsError < ::Selenium::WebDriver::Error::WebDriverError; end473class Selenium::WebDriver::Error::NoSuchAlertError < ::Selenium::WebDriver::Error::WebDriverError; end474class Selenium::WebDriver::Error::NoSuchCookieError < ::Selenium::WebDriver::Error::WebDriverError; end475class Selenium::WebDriver::Error::NoSuchElementError < ::Selenium::WebDriver::Error::WebDriverError; end476class Selenium::WebDriver::Error::NoSuchFrameError < ::Selenium::WebDriver::Error::WebDriverError; end477class Selenium::WebDriver::Error::NoSuchShadowRootError < ::Selenium::WebDriver::Error::WebDriverError; end478class Selenium::WebDriver::Error::NoSuchWindowError < ::Selenium::WebDriver::Error::WebDriverError; end479class Selenium::WebDriver::Error::ScriptTimeoutError < ::Selenium::WebDriver::Error::WebDriverError; end480class Selenium::WebDriver::Error::ServerError < ::StandardError481 def initialize(response); end482end483class Selenium::WebDriver::Error::SessionNotCreatedError < ::Selenium::WebDriver::Error::WebDriverError; end484class Selenium::WebDriver::Error::StaleElementReferenceError < ::Selenium::WebDriver::Error::WebDriverError; end485class Selenium::WebDriver::Error::TimeoutError < ::Selenium::WebDriver::Error::WebDriverError; end486class Selenium::WebDriver::Error::UnableToCaptureScreenError < ::Selenium::WebDriver::Error::WebDriverError; end487class Selenium::WebDriver::Error::UnableToSetCookieError < ::Selenium::WebDriver::Error::WebDriverError; end488class Selenium::WebDriver::Error::UnexpectedAlertOpenError < ::Selenium::WebDriver::Error::WebDriverError; end489class Selenium::WebDriver::Error::UnknownCommandError < ::Selenium::WebDriver::Error::WebDriverError; end490class Selenium::WebDriver::Error::UnknownError < ::Selenium::WebDriver::Error::WebDriverError; end491class Selenium::WebDriver::Error::UnknownMethodError < ::Selenium::WebDriver::Error::WebDriverError; end492class Selenium::WebDriver::Error::UnsupportedOperationError < ::Selenium::WebDriver::Error::WebDriverError; end493class Selenium::WebDriver::Error::WebDriverError < ::StandardError; end494module Selenium::WebDriver::FileReaper495 class << self496 def <<(file); end497 def reap(file); end498 def reap!; end499 def reap=(_arg0); end500 def reap?; end501 def tmp_files; end502 end503end504module Selenium::WebDriver::Firefox505 class << self506 def driver_path; end507 def driver_path=(path); end508 def path; end509 def path=(path); end510 end511end512Selenium::WebDriver::Firefox::DEFAULT_ASSUME_UNTRUSTED_ISSUER = T.let(T.unsafe(nil), TrueClass)513Selenium::WebDriver::Firefox::DEFAULT_PORT = T.let(T.unsafe(nil), Integer)514Selenium::WebDriver::Firefox::DEVTOOLS_VERSION = T.let(T.unsafe(nil), Integer)515class Selenium::WebDriver::Firefox::Driver < ::Selenium::WebDriver::Driver516 def browser; end517 private518 def devtools_url; end519 def devtools_version; end520end521Selenium::WebDriver::Firefox::Driver::EXTENSIONS = T.let(T.unsafe(nil), Array)522class Selenium::WebDriver::Firefox::Extension523 def initialize(path); end524 def write_to(extensions_dir); end525 private526 def applications_gecko_id(manifest); end527 def create_root; end528 def name_and_version(manifest); end529 def read_id(directory); end530 def read_id_from_install_rdf(directory); end531 def read_id_from_manifest_json(directory); end532end533Selenium::WebDriver::Firefox::Extension::NAMESPACE = T.let(T.unsafe(nil), String)534module Selenium::WebDriver::Firefox::Features535 def commands(command); end536 def context; end537 def context=(context); end538 def full_screenshot; end539 def install_addon(path, temporary); end540 def uninstall_addon(id); end541end542Selenium::WebDriver::Firefox::Features::FIREFOX_COMMANDS = T.let(T.unsafe(nil), Hash)543class Selenium::WebDriver::Firefox::Options < ::Selenium::WebDriver::Options544 def initialize(log_level: T.unsafe(nil), **opts); end545 def add_argument(arg); end546 def add_preference(name, value); end547 def debugger_address; end548 def debugger_address=(_arg0); end549 def enable_android(package: T.unsafe(nil), serial_number: T.unsafe(nil), activity: T.unsafe(nil), intent_arguments: T.unsafe(nil)); end550 def headless!; end551 def log_level; end552 def log_level=(level); end553 def profile; end554 def profile=(profile); end555 private556 def camelize?(key); end557 def process_browser_options(browser_options); end558 def process_profile(profile); end559end560Selenium::WebDriver::Firefox::Options::BROWSER = T.let(T.unsafe(nil), String)561Selenium::WebDriver::Firefox::Options::CAPABILITIES = T.let(T.unsafe(nil), Hash)562Selenium::WebDriver::Firefox::Options::KEY = T.let(T.unsafe(nil), String)563class Selenium::WebDriver::Firefox::Profile564 include ::Selenium::WebDriver::ProfileHelper565 extend ::Selenium::WebDriver::ProfileHelper::ClassMethods566 def initialize(model = T.unsafe(nil)); end567 def []=(key, value); end568 def add_extension(path, name = T.unsafe(nil)); end569 def as_json; end570 def layout_on_disk; end571 def load_no_focus_lib=(_arg0); end572 def log_file; end573 def log_file=(file); end574 def name; end575 def port=(port); end576 def proxy=(proxy); end577 def secure_ssl=(_arg0); end578 private579 def delete_extensions_cache(directory); end580 def delete_lock_files(directory); end581 def extension_name_for(path); end582 def install_extensions(directory); end583 def read_model_prefs; end584 def read_user_prefs(path); end585 def set_manual_proxy_preference(key, value); end586 def stringified?(str); end587 def update_user_prefs_in(directory); end588 def write_prefs(prefs, path); end589 class << self590 def decoded(json); end591 def from_name(name); end592 def ini; end593 end594end595Selenium::WebDriver::Firefox::Profile::DEFAULT_PREFERENCES = T.let(T.unsafe(nil), Hash)596Selenium::WebDriver::Firefox::Profile::VALID_PREFERENCE_TYPES = T.let(T.unsafe(nil), Array)597class Selenium::WebDriver::Firefox::ProfilesIni598 def initialize; end599 def [](name); end600 def refresh; end601 private602 def parse; end603 def path_for(name, is_relative, path); end604end605class Selenium::WebDriver::Firefox::Service < ::Selenium::WebDriver::Service606 private607 def extract_service_args(driver_opts); end608end609Selenium::WebDriver::Firefox::Service::DEFAULT_PORT = T.let(T.unsafe(nil), Integer)610Selenium::WebDriver::Firefox::Service::EXECUTABLE = T.let(T.unsafe(nil), String)611Selenium::WebDriver::Firefox::Service::MISSING_TEXT = T.let(T.unsafe(nil), String)612module Selenium::WebDriver::HTML5; end613class Selenium::WebDriver::HTML5::LocalStorage614 include ::Enumerable615 include ::Selenium::WebDriver::HTML5::SharedWebStorage616 def initialize(bridge); end617 def [](key); end618 def []=(key, value); end619 def clear; end620 def delete(key); end621 def keys; end622 def size; end623end624class Selenium::WebDriver::HTML5::SessionStorage625 include ::Enumerable626 include ::Selenium::WebDriver::HTML5::SharedWebStorage627 def initialize(bridge); end628 def [](key); end629 def []=(key, value); end630 def clear; end631 def delete(key); end632 def keys; end633 def size; end634end635module Selenium::WebDriver::HTML5::SharedWebStorage636 include ::Enumerable637 def each; end638 def empty?; end639 def fetch(key); end640 def has_key?(key); end641 def key?(key); end642 def member?(key); end643end644module Selenium::WebDriver::IE645 class << self646 def driver_path; end647 def driver_path=(path); end648 end649end650class Selenium::WebDriver::IE::Driver < ::Selenium::WebDriver::Driver651 def browser; end652end653Selenium::WebDriver::IE::Driver::EXTENSIONS = T.let(T.unsafe(nil), Array)654class Selenium::WebDriver::IE::Options < ::Selenium::WebDriver::Options655 def initialize(**opts); end656 def add_argument(arg); end657 def args; end658 private659 def process_browser_options(browser_options); end660end661Selenium::WebDriver::IE::Options::BROWSER = T.let(T.unsafe(nil), String)662Selenium::WebDriver::IE::Options::CAPABILITIES = T.let(T.unsafe(nil), Hash)663Selenium::WebDriver::IE::Options::KEY = T.let(T.unsafe(nil), String)664Selenium::WebDriver::IE::Options::SCROLL_BOTTOM = T.let(T.unsafe(nil), Integer)665Selenium::WebDriver::IE::Options::SCROLL_TOP = T.let(T.unsafe(nil), Integer)666class Selenium::WebDriver::IE::Service < ::Selenium::WebDriver::Service667 private668 def extract_service_args(driver_opts); end669end670Selenium::WebDriver::IE::Service::DEFAULT_PORT = T.let(T.unsafe(nil), Integer)671Selenium::WebDriver::IE::Service::EXECUTABLE = T.let(T.unsafe(nil), String)672Selenium::WebDriver::IE::Service::MISSING_TEXT = T.let(T.unsafe(nil), String)673Selenium::WebDriver::IE::Service::SHUTDOWN_SUPPORTED = T.let(T.unsafe(nil), TrueClass)674module Selenium::WebDriver::Interactions675 class << self676 def key(name); end677 def none(name = T.unsafe(nil)); end678 def pointer(kind, **kwargs); end679 end680end681class Selenium::WebDriver::Interactions::InputDevice682 def initialize(name = T.unsafe(nil)); end683 def actions; end684 def add_action(action); end685 def clear_actions; end686 def create_pause(duration = T.unsafe(nil)); end687 def name; end688 def no_actions?; end689end690class Selenium::WebDriver::Interactions::Interaction691 def initialize(source); end692 def source; end693end694Selenium::WebDriver::Interactions::Interaction::PAUSE = T.let(T.unsafe(nil), Symbol)695Selenium::WebDriver::Interactions::KEY = T.let(T.unsafe(nil), Symbol)696class Selenium::WebDriver::Interactions::KeyInput < ::Selenium::WebDriver::Interactions::InputDevice697 def create_key_down(key); end698 def create_key_up(key); end699 def encode; end700 def type; end701end702Selenium::WebDriver::Interactions::KeyInput::SUBTYPES = T.let(T.unsafe(nil), Hash)703class Selenium::WebDriver::Interactions::KeyInput::TypingInteraction < ::Selenium::WebDriver::Interactions::Interaction704 def initialize(source, type, key); end705 def assert_type(type); end706 def encode; end707 def type; end708end709Selenium::WebDriver::Interactions::NONE = T.let(T.unsafe(nil), Symbol)710class Selenium::WebDriver::Interactions::NoneInput < ::Selenium::WebDriver::Interactions::InputDevice711 def encode; end712 def type; end713end714Selenium::WebDriver::Interactions::POINTER = T.let(T.unsafe(nil), Symbol)715class Selenium::WebDriver::Interactions::Pause < ::Selenium::WebDriver::Interactions::Interaction716 def initialize(source, duration = T.unsafe(nil)); end717 def encode; end718 def type; end719end720class Selenium::WebDriver::Interactions::PointerCancel < ::Selenium::WebDriver::Interactions::Interaction721 def encode; end722 def type; end723end724class Selenium::WebDriver::Interactions::PointerInput < ::Selenium::WebDriver::Interactions::InputDevice725 def initialize(kind, name: T.unsafe(nil)); end726 def assert_kind(pointer); end727 def create_pointer_cancel; end728 def create_pointer_down(button); end729 def create_pointer_move(duration: T.unsafe(nil), x: T.unsafe(nil), y: T.unsafe(nil), element: T.unsafe(nil), origin: T.unsafe(nil)); end730 def create_pointer_up(button); end731 def encode; end732 def kind; end733 def type; end734end735Selenium::WebDriver::Interactions::PointerInput::KIND = T.let(T.unsafe(nil), Hash)736class Selenium::WebDriver::Interactions::PointerMove < ::Selenium::WebDriver::Interactions::Interaction737 def initialize(source, duration, x, y, element: T.unsafe(nil), origin: T.unsafe(nil)); end738 def encode; end739 def type; end740end741Selenium::WebDriver::Interactions::PointerMove::ORIGINS = T.let(T.unsafe(nil), Array)742Selenium::WebDriver::Interactions::PointerMove::POINTER = T.let(T.unsafe(nil), Symbol)743Selenium::WebDriver::Interactions::PointerMove::VIEWPORT = T.let(T.unsafe(nil), Symbol)744class Selenium::WebDriver::Interactions::PointerPress < ::Selenium::WebDriver::Interactions::Interaction745 def initialize(source, direction, button); end746 def assert_button(button); end747 def assert_direction(direction); end748 def encode; end749 def type; end750end751Selenium::WebDriver::Interactions::PointerPress::BUTTONS = T.let(T.unsafe(nil), Hash)752Selenium::WebDriver::Interactions::PointerPress::DIRECTIONS = T.let(T.unsafe(nil), Hash)753Selenium::WebDriver::Interactions::SOURCE_TYPES = T.let(T.unsafe(nil), Array)754module Selenium::WebDriver::KeyActions755 def key_down(*args, device: T.unsafe(nil)); end756 def key_up(*args, device: T.unsafe(nil)); end757 def send_keys(*args, device: T.unsafe(nil)); end758 private759 def key_action(*args, action: T.unsafe(nil), device: T.unsafe(nil)); end760end761module Selenium::WebDriver::Keys762 class << self763 def [](key); end764 def encode(keys); end765 def encode_key(key); end766 end767end768Selenium::WebDriver::Keys::KEYS = T.let(T.unsafe(nil), Hash)769class Selenium::WebDriver::Location < ::Struct770 def altitude; end771 def altitude=(_); end772 def latitude; end773 def latitude=(_); end774 def longitude; end775 def longitude=(_); end776 class << self777 def [](*_arg0); end778 def inspect; end779 def keyword_init?; end780 def members; end781 def new(*_arg0); end782 end783end784class Selenium::WebDriver::LogEntry785 def initialize(level, timestamp, message); end786 def as_json(*_arg0); end787 def level; end788 def message; end789 def time; end790 def timestamp; end791 def to_s; end792end793class Selenium::WebDriver::Logger794 extend ::Forwardable795 def initialize(progname = T.unsafe(nil)); end796 def close(*args, **_arg1, &block); end797 def debug(*args, **_arg1, &block); end798 def debug?(*args, **_arg1, &block); end799 def deprecate(old, new = T.unsafe(nil), id: T.unsafe(nil), reference: T.unsafe(nil), &block); end800 def error(*args, **_arg1, &block); end801 def error?(*args, **_arg1, &block); end802 def fatal(*args, **_arg1, &block); end803 def fatal?(*args, **_arg1, &block); end804 def ignore(id); end805 def info(*args, **_arg1, &block); end806 def info?(*args, **_arg1, &block); end807 def io; end808 def level(*args, **_arg1, &block); end809 def level=(*args, **_arg1, &block); end810 def output=(io); end811 def warn(message, id: T.unsafe(nil)); end812 def warn?(*args, **_arg1, &block); end813 private814 def create_logger(name); end815 def default_level; end816end817class Selenium::WebDriver::Logs818 def initialize(bridge); end819 def available_types; end820 def get(type); end821end822class Selenium::WebDriver::Manager823 def initialize(bridge); end824 def add_cookie(opts = T.unsafe(nil)); end825 def all_cookies; end826 def cookie_named(name); end827 def delete_all_cookies; end828 def delete_cookie(name); end829 def logs; end830 def new_window(type = T.unsafe(nil)); end831 def timeouts; end832 def window; end833 private834 def convert_cookie(cookie); end835 def datetime_at(int); end836 def seconds_from(obj); end837 def strip_port(str); end838end839Selenium::WebDriver::Manager::SECONDS_PER_DAY = T.let(T.unsafe(nil), Float)840class Selenium::WebDriver::Navigation841 def initialize(bridge); end842 def back; end843 def forward; end844 def refresh; end845 def to(url); end846end847class Selenium::WebDriver::Options848 def initialize(options: T.unsafe(nil), **opts); end849 def ==(other); end850 def add_option(name, value = T.unsafe(nil)); end851 def as_json(*_arg0); end852 def eql?(other); end853 def options; end854 def options=(_arg0); end855 private856 def camel_case(str); end857 def camelize?(_key); end858 def convert_json_key(key, camelize: T.unsafe(nil)); end859 def generate_as_json(value, camelize_keys: T.unsafe(nil)); end860 def process_browser_options(_browser_options); end861 def process_json_hash(value, camelize_keys); end862 def process_w3c_options(options); end863 def w3c?(key); end864 class << self865 def chrome(**opts); end866 def driver_path; end867 def edge(**opts); end868 def firefox(**opts); end869 def ie(**opts); end870 def internet_explorer(**opts); end871 def microsoftedge(**opts); end872 def safari(**opts); end873 def set_capabilities; end874 end875end876Selenium::WebDriver::Options::W3C_OPTIONS = T.let(T.unsafe(nil), Array)877module Selenium::WebDriver::Platform878 private879 def assert_executable(path); end880 def assert_file(path); end881 def bitsize; end882 def ci; end883 def cygwin?; end884 def cygwin_path(path, **opts); end885 def engine; end886 def exit_hook; end887 def find_binary(*binary_names); end888 def find_in_program_files(*binary_names); end889 def home; end890 def interfaces; end891 def ip; end892 def jruby?; end893 def linux?; end894 def localhost; end895 def mac?; end896 def make_writable(file); end897 def null_device; end898 def os; end899 def ruby_version; end900 def unix_path(path); end901 def windows?; end902 def windows_path(path); end903 def wrap_in_quotes_if_necessary(str); end904 def wsl?; end905 class << self906 def assert_executable(path); end907 def assert_file(path); end908 def bitsize; end909 def ci; end910 def cygwin?; end911 def cygwin_path(path, **opts); end912 def engine; end913 def exit_hook; end914 def find_binary(*binary_names); end915 def find_in_program_files(*binary_names); end916 def home; end917 def interfaces; end918 def ip; end919 def jruby?; end920 def linux?; end921 def localhost; end922 def mac?; end923 def make_writable(file); end924 def null_device; end925 def os; end926 def ruby_version; end927 def unix_path(path); end928 def windows?; end929 def windows_path(path); end930 def wrap_in_quotes_if_necessary(str); end931 def wsl?; end932 end933end934class Selenium::WebDriver::Point < ::Struct935 def x; end936 def x=(_); end937 def y; end938 def y=(_); end939 class << self940 def [](*_arg0); end941 def inspect; end942 def keyword_init?; end943 def members; end944 def new(*_arg0); end945 end946end947module Selenium::WebDriver::PointerActions948 def click(element = T.unsafe(nil), device: T.unsafe(nil)); end949 def click_and_hold(element = T.unsafe(nil), device: T.unsafe(nil)); end950 def context_click(element = T.unsafe(nil), device: T.unsafe(nil)); end951 def default_move_duration; end952 def default_move_duration=(_arg0); end953 def double_click(element = T.unsafe(nil), device: T.unsafe(nil)); end954 def drag_and_drop(source, target, device: T.unsafe(nil)); end955 def drag_and_drop_by(source, right_by, down_by, device: T.unsafe(nil)); end956 def move_by(right_by, down_by, device: T.unsafe(nil)); end957 def move_to(element, right_by = T.unsafe(nil), down_by = T.unsafe(nil), device: T.unsafe(nil)); end958 def move_to_location(x, y, device: T.unsafe(nil)); end959 def pointer_down(button, device: T.unsafe(nil)); end960 def pointer_up(button, device: T.unsafe(nil)); end961 def release(device: T.unsafe(nil)); end962 private963 def button_action(button, action: T.unsafe(nil), device: T.unsafe(nil)); end964 def get_pointer(device = T.unsafe(nil)); end965end966class Selenium::WebDriver::PortProber967 class << self968 def above(port); end969 def free?(port); end970 end971end972Selenium::WebDriver::PortProber::IGNORED_ERRORS = T.let(T.unsafe(nil), Array)973module Selenium::WebDriver::ProfileHelper974 mixes_in_class_methods ::Selenium::WebDriver::ProfileHelper::ClassMethods975 def as_json(*_arg0); end976 def encoded; end977 def to_json(*_arg0); end978 private979 def create_tmp_copy(directory); end980 def verify_model(model); end981 class << self982 def decoded(json); end983 def included(base); end984 end985end986module Selenium::WebDriver::ProfileHelper::ClassMethods987 def from_json(json); end988end989class Selenium::WebDriver::Proxy990 def initialize(opts = T.unsafe(nil)); end991 def ==(other); end992 def as_json(*_arg0); end993 def auto_detect; end994 def auto_detect=(bool); end995 def eql?(other); end996 def ftp; end997 def ftp=(value); end998 def http; end999 def http=(value); end1000 def no_proxy; end1001 def no_proxy=(value); end1002 def pac; end1003 def pac=(url); end1004 def socks; end1005 def socks=(value); end1006 def socks_password; end1007 def socks_password=(value); end1008 def socks_username; end1009 def socks_username=(value); end1010 def socks_version; end1011 def socks_version=(value); end1012 def ssl; end1013 def ssl=(value); end1014 def to_json(*_arg0); end1015 def type; end1016 def type=(type); end1017 class << self1018 def json_create(data); end1019 end1020end1021Selenium::WebDriver::Proxy::ALLOWED = T.let(T.unsafe(nil), Hash)1022Selenium::WebDriver::Proxy::TYPES = T.let(T.unsafe(nil), Hash)1023class Selenium::WebDriver::Rectangle < ::Struct1024 def height; end1025 def height=(_); end1026 def width; end1027 def width=(_); end1028 def x; end1029 def x=(_); end1030 def y; end1031 def y=(_); end1032 class << self1033 def [](*_arg0); end1034 def inspect; end1035 def keyword_init?; end1036 def members; end1037 def new(*_arg0); end1038 end1039end1040module Selenium::WebDriver::Remote; end1041class Selenium::WebDriver::Remote::Bridge1042 include ::Selenium::WebDriver::Atoms1043 def initialize(url:, http_client: T.unsafe(nil)); end1044 def accept_alert; end1045 def action(async = T.unsafe(nil)); end1046 def actions(async = T.unsafe(nil)); end1047 def active_element; end1048 def add_cookie(cookie); end1049 def alert=(keys); end1050 def alert_text; end1051 def browser; end1052 def capabilities; end1053 def clear_element(element); end1054 def clear_local_storage; end1055 def clear_session_storage; end1056 def click_element(element); end1057 def close; end1058 def cookie(name); end1059 def cookies; end1060 def create_session(capabilities); end1061 def delete_all_cookies; end1062 def delete_cookie(name); end1063 def dismiss_alert; end1064 def element_aria_label(element); end1065 def element_aria_role(element); end1066 def element_attribute(element, name); end1067 def element_displayed?(element); end1068 def element_dom_attribute(element, name); end1069 def element_enabled?(element); end1070 def element_location(element); end1071 def element_location_once_scrolled_into_view(element); end1072 def element_property(element, name); end1073 def element_rect(element); end1074 def element_screenshot(element); end1075 def element_selected?(element); end1076 def element_size(element); end1077 def element_tag_name(element); end1078 def element_text(element); end1079 def element_value(element); end1080 def element_value_of_css_property(element, prop); end1081 def execute_async_script(script, *args); end1082 def execute_script(script, *args); end1083 def file_detector; end1084 def file_detector=(_arg0); end1085 def find_element_by(how, what, parent_ref = T.unsafe(nil)); end1086 def find_elements_by(how, what, parent_ref = T.unsafe(nil)); end1087 def full_screen_window; end1088 def get(url); end1089 def go_back; end1090 def go_forward; end1091 def http; end1092 def http=(_arg0); end1093 def keyboard; end1094 def local_storage_item(key, value = T.unsafe(nil)); end1095 def local_storage_keys; end1096 def local_storage_size; end1097 def manage; end1098 def maximize_window(handle = T.unsafe(nil)); end1099 def minimize_window; end1100 def mouse; end1101 def new_window(type); end1102 def page_source; end1103 def print_page(options = T.unsafe(nil)); end1104 def quit; end1105 def refresh; end1106 def release_actions; end1107 def remove_local_storage_item(key); end1108 def remove_session_storage_item(key); end1109 def reposition_window(x, y); end1110 def resize_window(width, height, handle = T.unsafe(nil)); end1111 def screenshot; end1112 def send_actions(data); end1113 def send_keys_to_element(element, keys); end1114 def session_id; end1115 def session_storage_item(key, value = T.unsafe(nil)); end1116 def session_storage_keys; end1117 def session_storage_size; end1118 def set_window_rect(x: T.unsafe(nil), y: T.unsafe(nil), width: T.unsafe(nil), height: T.unsafe(nil)); end1119 def shadow_root(element); end1120 def status; end1121 def submit_element(element); end1122 def switch_to_active_element; end1123 def switch_to_default_content; end1124 def switch_to_frame(id); end1125 def switch_to_parent_frame; end1126 def switch_to_window(name); end1127 def timeouts; end1128 def timeouts=(timeouts); end1129 def title; end1130 def upload(local_file); end1131 def url; end1132 def window_handle; end1133 def window_handles; end1134 def window_position; end1135 def window_rect; end1136 def window_size(handle = T.unsafe(nil)); end1137 private1138 def commands(command); end1139 def convert_locator(how, what); end1140 def element_id_from(id); end1141 def escape_css(string); end1142 def escaper; end1143 def execute(command, opts = T.unsafe(nil), command_hash = T.unsafe(nil)); end1144 def prepare_capabilities_payload(capabilities); end1145 def shadow_root_id_from(id); end1146 def unwrap_script_result(arg); end1147end1148Selenium::WebDriver::Remote::Bridge::COMMANDS = T.let(T.unsafe(nil), Hash)1149Selenium::WebDriver::Remote::Bridge::ESCAPE_CSS_REGEXP = T.let(T.unsafe(nil), Regexp)1150Selenium::WebDriver::Remote::Bridge::PORT = T.let(T.unsafe(nil), Integer)1151Selenium::WebDriver::Remote::Bridge::QUIT_ERRORS = T.let(T.unsafe(nil), Array)1152Selenium::WebDriver::Remote::Bridge::UNICODE_CODE_POINT = T.let(T.unsafe(nil), Integer)1153class Selenium::WebDriver::Remote::Capabilities1154 def initialize(opts = T.unsafe(nil)); end1155 def ==(other); end1156 def [](key); end1157 def []=(key, value); end1158 def accept_insecure_certs; end1159 def accept_insecure_certs=(value); end1160 def as_json(*_arg0); end1161 def browser_name; end1162 def browser_name=(value); end1163 def browser_version; end1164 def browser_version=(value); end1165 def eql?(other); end1166 def implicit_timeout; end1167 def implicit_timeout=(timeout); end1168 def merge!(other); end1169 def page_load_strategy; end1170 def page_load_strategy=(value); end1171 def page_load_timeout; end1172 def page_load_timeout=(timeout); end1173 def platform; end1174 def platform=(value); end1175 def platform_name; end1176 def platform_name=(value); end1177 def proxy; end1178 def proxy=(proxy); end1179 def remote_session_id; end1180 def remote_session_id=(value); end1181 def script_timeout; end1182 def script_timeout=(timeout); end1183 def set_window_rect; end1184 def set_window_rect=(value); end1185 def strict_file_interactability; end1186 def strict_file_interactability=(value); end1187 def timeouts; end1188 def timeouts=(timeouts); end1189 def to_json(*_arg0); end1190 def unhandled_prompt_behavior; end1191 def unhandled_prompt_behavior=(value); end1192 def version; end1193 def version=(value); end1194 def web_socket_url; end1195 def web_socket_url=(value); end1196 protected1197 def capabilities; end1198 private1199 def convert_key(key); end1200 def convert_value(key, value); end1201 def process_capabilities(key, value, hash); end1202 class << self1203 def always_match(capabilities); end1204 def camel_case(str_or_sym); end1205 def chrome(opts = T.unsafe(nil)); end1206 def edge(opts = T.unsafe(nil)); end1207 def ff(opts = T.unsafe(nil)); end1208 def firefox(opts = T.unsafe(nil)); end1209 def first_match(*capabilities); end1210 def htmlunit(opts = T.unsafe(nil)); end1211 def ie(opts = T.unsafe(nil)); end1212 def internet_explorer(opts = T.unsafe(nil)); end1213 def json_create(data); end1214 def microsoftedge(opts = T.unsafe(nil)); end1215 def safari(opts = T.unsafe(nil)); end1216 private1217 def process_timeouts(caps, timeouts); end1218 end1219end1220Selenium::WebDriver::Remote::Capabilities::KNOWN = T.let(T.unsafe(nil), Array)1221class Selenium::WebDriver::Remote::Driver < ::Selenium::WebDriver::Driver1222 include ::Selenium::WebDriver::DriverExtensions::UploadsFiles1223 include ::Selenium::WebDriver::DriverExtensions::HasSessionId1224 include ::Selenium::WebDriver::DriverExtensions::HasRemoteStatus1225 def initialize(bridge: T.unsafe(nil), listener: T.unsafe(nil), **opts); end1226 private1227 def devtools_url; end1228 def devtools_version; end1229end1230module Selenium::WebDriver::Remote::Http; end1231class Selenium::WebDriver::Remote::Http::Common1232 def call(verb, url, command_hash); end1233 def close; end1234 def quit_errors; end1235 def server_url=(_arg0); end1236 private1237 def create_response(code, body, content_type); end1238 def request(*_arg0); end1239 def server_url; end1240end1241Selenium::WebDriver::Remote::Http::Common::CONTENT_TYPE = T.let(T.unsafe(nil), String)1242Selenium::WebDriver::Remote::Http::Common::DEFAULT_HEADERS = T.let(T.unsafe(nil), Hash)1243Selenium::WebDriver::Remote::Http::Common::MAX_REDIRECTS = T.let(T.unsafe(nil), Integer)1244class Selenium::WebDriver::Remote::Http::Default < ::Selenium::WebDriver::Remote::Http::Common1245 def initialize(open_timeout: T.unsafe(nil), read_timeout: T.unsafe(nil)); end1246 def close; end1247 def open_timeout; end1248 def open_timeout=(_arg0); end1249 def proxy=(_arg0); end1250 def read_timeout; end1251 def read_timeout=(_arg0); end1252 private1253 def http; end1254 def new_http_client; end1255 def new_request_for(verb, url, headers, payload); end1256 def proxy; end1257 def request(verb, url, headers, payload, redirects = T.unsafe(nil)); end1258 def response_for(request); end1259 def start(http); end1260 def use_proxy?; end1261end1262Selenium::WebDriver::Remote::Http::Default::MAX_RETRIES = T.let(T.unsafe(nil), Integer)1263class Selenium::WebDriver::Remote::Response1264 def initialize(code, payload = T.unsafe(nil)); end1265 def [](key); end1266 def code; end1267 def error; end1268 def payload; end1269 private1270 def add_backtrace(ex, server_trace); end1271 def assert_ok; end1272 def backtrace_from_remote(server_trace); end1273 def process_error; end1274end1275module Selenium::WebDriver::Safari1276 class << self1277 def driver_path; end1278 def driver_path=(path); end1279 def path; end1280 def path=(path); end1281 def technology_preview; end1282 def technology_preview!; end1283 def technology_preview?; end1284 def use_technology_preview; end1285 def use_technology_preview=(_arg0); end1286 end1287end1288class Selenium::WebDriver::Safari::Driver < ::Selenium::WebDriver::Driver1289 def browser; end1290end1291Selenium::WebDriver::Safari::Driver::EXTENSIONS = T.let(T.unsafe(nil), Array)1292module Selenium::WebDriver::Safari::Features1293 def attach_debugger; end1294 def commands(command); end1295 def permissions; end1296 def permissions=(permissions); end1297end1298Selenium::WebDriver::Safari::Features::SAFARI_COMMANDS = T.let(T.unsafe(nil), Hash)1299class Selenium::WebDriver::Safari::Options < ::Selenium::WebDriver::Options...
selenium-webdriver@4.0.3.rbi
Source:selenium-webdriver@4.0.3.rbi
...5module Selenium; end6module Selenium::WebDriver7 class << self8 def for(*args); end9 def logger; end10 def root; end11 end12end13class Selenium::WebDriver::ActionBuilder14 include ::Selenium::WebDriver::KeyActions15 include ::Selenium::WebDriver::PointerActions16 def initialize(bridge, mouse, keyboard, async = T.unsafe(nil)); end17 def add_key_input(name); end18 def add_pointer_input(kind, name); end19 def clear_all_actions; end20 def devices; end21 def get_device(name); end22 def key_inputs; end23 def pause(device, duration = T.unsafe(nil)); end24 def pauses(device, number, duration = T.unsafe(nil)); end25 def perform; end26 def pointer_inputs; end27 def release_actions; end28 private29 def add_input(device); end30 def tick(*action_devices); end31end32class Selenium::WebDriver::Alert33 def initialize(bridge); end34 def accept; end35 def dismiss; end36 def send_keys(keys); end37 def text; end38end39module Selenium::WebDriver::Atoms40 private41 def execute_atom(function_name, *arguments); end42 def read_atom(function); end43end44module Selenium::WebDriver::Chrome45 class << self46 def driver_path; end47 def driver_path=(path); end48 def path; end49 def path=(path); end50 end51end52class Selenium::WebDriver::Chrome::Driver < ::Selenium::WebDriver::Driver53 def browser; end54 private55 def devtools_address; end56 def devtools_url; end57 def devtools_version; end58end59Selenium::WebDriver::Chrome::Driver::EXTENSIONS = T.let(T.unsafe(nil), Array)60module Selenium::WebDriver::Chrome::Features61 def available_log_types; end62 def cast_issue_message; end63 def cast_sink_to_use=(name); end64 def cast_sinks; end65 def commands(command); end66 def delete_network_conditions; end67 def launch_app(id); end68 def log(type); end69 def network_conditions; end70 def network_conditions=(conditions); end71 def send_command(command_params); end72 def set_permission(name, value); end73 def start_cast_tab_mirroring(name); end74 def stop_casting(name); end75end76Selenium::WebDriver::Chrome::Features::CHROME_COMMANDS = T.let(T.unsafe(nil), Hash)77class Selenium::WebDriver::Chrome::Options < ::Selenium::WebDriver::Options78 def initialize(profile: T.unsafe(nil), **opts); end79 def add_argument(arg); end80 def add_emulation(**opts); end81 def add_encoded_extension(encoded); end82 def add_extension(path); end83 def add_preference(name, value); end84 def enable_android(package: T.unsafe(nil), serial_number: T.unsafe(nil), use_running_app: T.unsafe(nil), activity: T.unsafe(nil)); end85 def extensions; end86 def extensions=(extensions); end87 def headless!; end88 def logging_prefs; end89 def logging_prefs=(_arg0); end90 def profile; end91 def profile=(_arg0); end92 private93 def binary_path; end94 def camelize?(key); end95 def enable_logging(browser_options); end96 def encode_extension(path); end97 def process_browser_options(browser_options); end98 def validate_extension(path); end99end100Selenium::WebDriver::Chrome::Options::BROWSER = T.let(T.unsafe(nil), String)101Selenium::WebDriver::Chrome::Options::CAPABILITIES = T.let(T.unsafe(nil), Hash)102Selenium::WebDriver::Chrome::Options::KEY = T.let(T.unsafe(nil), String)103class Selenium::WebDriver::Chrome::Profile104 include ::Selenium::WebDriver::ProfileHelper105 extend ::Selenium::WebDriver::ProfileHelper::ClassMethods106 def initialize(model = T.unsafe(nil)); end107 def [](key); end108 def []=(key, value); end109 def add_encoded_extension(encoded); end110 def add_extension(path); end111 def as_json(*_arg0); end112 def directory; end113 def layout_on_disk; end114 private115 def prefs; end116 def prefs_file_for(dir); end117 def read_model_prefs; end118 def write_prefs_to(dir); end119end120class Selenium::WebDriver::Chrome::Service < ::Selenium::WebDriver::Service121 private122 def extract_service_args(driver_opts); end123end124Selenium::WebDriver::Chrome::Service::DEFAULT_PORT = T.let(T.unsafe(nil), Integer)125Selenium::WebDriver::Chrome::Service::EXECUTABLE = T.let(T.unsafe(nil), String)126Selenium::WebDriver::Chrome::Service::MISSING_TEXT = T.let(T.unsafe(nil), String)127Selenium::WebDriver::Chrome::Service::SHUTDOWN_SUPPORTED = T.let(T.unsafe(nil), TrueClass)128class Selenium::WebDriver::DevTools129 def initialize(url:); end130 def callbacks; end131 def close; end132 def method_missing(method, *_args); end133 def send_cmd(method, **params); end134 private135 def attach_socket_listener; end136 def callback_thread(params); end137 def error_message(error); end138 def incoming_frame; end139 def next_id; end140 def process_frame(frame); end141 def process_handshake; end142 def respond_to_missing?(method, *_args); end143 def socket; end144 def start_session; end145 def wait; end146 def ws; end147end148class Selenium::WebDriver::DevTools::ConsoleEvent149 def initialize(type:, timestamp:, args:); end150 def args; end151 def args=(_arg0); end152 def timestamp; end153 def timestamp=(_arg0); end154 def type; end155 def type=(_arg0); end156end157class Selenium::WebDriver::DevTools::ExceptionEvent158 def initialize(description:, timestamp:, stacktrace:); end159 def description; end160 def description=(_arg0); end161 def stacktrace; end162 def stacktrace=(_arg0); end163 def timestamp; end164 def timestamp=(_arg0); end165end166class Selenium::WebDriver::DevTools::MutationEvent167 def initialize(element:, attribute_name:, current_value:, old_value:); end168 def attribute_name; end169 def attribute_name=(_arg0); end170 def current_value; end171 def current_value=(_arg0); end172 def element; end173 def element=(_arg0); end174 def old_value; end175 def old_value=(_arg0); end176end177class Selenium::WebDriver::DevTools::PinnedScript178 def initialize(script); end179 def callable; end180 def devtools_identifier; end181 def devtools_identifier=(_arg0); end182 def key; end183 def key=(_arg0); end184 def remove; end185 def script; end186 def script=(_arg0); end187 def to_json(*_arg0); end188end189Selenium::WebDriver::DevTools::RESPONSE_WAIT_INTERVAL = T.let(T.unsafe(nil), Float)190Selenium::WebDriver::DevTools::RESPONSE_WAIT_TIMEOUT = T.let(T.unsafe(nil), Integer)191class Selenium::WebDriver::DevTools::Request192 def initialize(id:, url:, method:, headers:, post_data:); end193 def ==(other); end194 def headers; end195 def headers=(_arg0); end196 def id; end197 def inspect; end198 def method; end199 def method=(_arg0); end200 def post_data; end201 def post_data=(_arg0); end202 def url; end203 def url=(_arg0); end204 class << self205 def from(id, params); end206 end207end208class Selenium::WebDriver::DevTools::Response209 def initialize(id:, code:, body:, headers:); end210 def ==(other); end211 def body; end212 def body=(_arg0); end213 def code; end214 def code=(_arg0); end215 def headers; end216 def headers=(_arg0); end217 def id; end218 def inspect; end219 class << self220 def from(id, encoded_body, params); end221 end222end223class Selenium::WebDriver::Dimension < ::Struct224 def height; end225 def height=(_); end226 def width; end227 def width=(_); end228 class << self229 def [](*_arg0); end230 def inspect; end231 def members; end232 def new(*_arg0); end233 end234end235class Selenium::WebDriver::Driver236 include ::Selenium::WebDriver::SearchContext237 include ::Selenium::WebDriver::TakesScreenshot238 def initialize(bridge: T.unsafe(nil), listener: T.unsafe(nil), **opts); end239 def [](sel); end240 def action; end241 def all(*args); end242 def browser; end243 def capabilities; end244 def close; end245 def current_url; end246 def execute_async_script(script, *args); end247 def execute_script(script, *args); end248 def first(*args); end249 def get(url); end250 def inspect; end251 def keyboard; end252 def manage; end253 def mouse; end254 def navigate; end255 def page_source; end256 def quit; end257 def ref; end258 def script(script, *args); end259 def status; end260 def switch_to; end261 def title; end262 def window_handle; end263 def window_handles; end264 private265 def add_extensions(browser); end266 def bridge; end267 def create_bridge(**opts); end268 def generate_capabilities(cap_array); end269 def screenshot; end270 def service_url(opts); end271 class << self272 def for(browser, opts = T.unsafe(nil)); end273 end274end275module Selenium::WebDriver::DriverExtensions; end276module Selenium::WebDriver::DriverExtensions::DownloadsFiles277 def download_path=(path); end278end279module Selenium::WebDriver::DriverExtensions::FullPageScreenshot280 def save_full_page_screenshot(path); end281 private282 def full_screenshot; end283end284module Selenium::WebDriver::DriverExtensions::HasAddons285 def install_addon(path, temporary = T.unsafe(nil)); end286 def uninstall_addon(id); end287end288module Selenium::WebDriver::DriverExtensions::HasApplePermissions289 def permissions; end290 def permissions=(permissions); end291end292module Selenium::WebDriver::DriverExtensions::HasAuthentication293 def register(username:, password:, uri: T.unsafe(nil)); end294 private295 def auth_handlers; end296 def authenticate(request_id, url); end297end298module Selenium::WebDriver::DriverExtensions::HasCDP299 def execute_cdp(cmd, **params); end300end301module Selenium::WebDriver::DriverExtensions::HasCasting302 def cast_issue_message; end303 def cast_sink_to_use=(name); end304 def cast_sinks; end305 def start_cast_tab_mirroring(name); end306 def stop_casting(name); end307end308module Selenium::WebDriver::DriverExtensions::HasContext309 def context; end310 def context=(value); end311end312module Selenium::WebDriver::DriverExtensions::HasDebugger313 def attach_debugger; end314end315module Selenium::WebDriver::DriverExtensions::HasDevTools316 def devtools; end317end318module Selenium::WebDriver::DriverExtensions::HasLaunching319 def launch_app(id); end320end321module Selenium::WebDriver::DriverExtensions::HasLocation322 def location; end323 def location=(*_arg0); end324 def set_location; end325end326module Selenium::WebDriver::DriverExtensions::HasLogEvents327 include ::Selenium::WebDriver::Atoms328 def on_log_event(kind, &block); end329 private330 def log_console_events; end331 def log_exception_events; end332 def log_listeners; end333 def log_mutation_event(params); end334 def log_mutation_events; end335 def mutation_listener; end336end337Selenium::WebDriver::DriverExtensions::HasLogEvents::KINDS = T.let(T.unsafe(nil), Array)338module Selenium::WebDriver::DriverExtensions::HasLogs339 def logs; end340end341module Selenium::WebDriver::DriverExtensions::HasNetworkConditions342 def delete_network_conditions; end343 def network_conditions; end344 def network_conditions=(conditions); end345end346module Selenium::WebDriver::DriverExtensions::HasNetworkConnection347 def network_connection_type; end348 def network_connection_type=(*_arg0); end349end350module Selenium::WebDriver::DriverExtensions::HasNetworkInterception351 def intercept(&block); end352 private353 def fetch_response_body(id); end354 def intercept_request(id, params, &block); end355 def intercept_response(id, params); end356 def pending_response_requests; end357end358module Selenium::WebDriver::DriverExtensions::HasPermissions359 def add_permission(name, value); end360 def add_permissions(opt); end361end362module Selenium::WebDriver::DriverExtensions::HasPinnedScripts363 def pin_script(script); end364 def pinned_scripts; end365 def unpin_script(script); end366end367module Selenium::WebDriver::DriverExtensions::HasRemoteStatus368 def remote_status; end369end370module Selenium::WebDriver::DriverExtensions::HasSessionId371 def session_id; end372end373module Selenium::WebDriver::DriverExtensions::HasWebStorage374 def local_storage; end375 def session_storage; end376end377module Selenium::WebDriver::DriverExtensions::PrintsPage378 def print_page(**options); end379 def save_print_page(path, **options); end380end381module Selenium::WebDriver::DriverExtensions::UploadsFiles382 def file_detector=(detector); end383end384module Selenium::WebDriver::Edge385 class << self386 def path; end387 def path=(path); end388 end389end390class Selenium::WebDriver::Edge::Driver < ::Selenium::WebDriver::Chrome::Driver391 def browser; end392 private393 def devtools_address; end394end395module Selenium::WebDriver::Edge::Features396 include ::Selenium::WebDriver::Chrome::Features397 def commands(command); end398end399Selenium::WebDriver::Edge::Features::EDGE_COMMANDS = T.let(T.unsafe(nil), Hash)400class Selenium::WebDriver::Edge::Options < ::Selenium::WebDriver::Chrome::Options401 protected402 def enable_logging(browser_options); end403 private404 def binary_path; end405end406Selenium::WebDriver::Edge::Options::BROWSER = T.let(T.unsafe(nil), String)407Selenium::WebDriver::Edge::Options::KEY = T.let(T.unsafe(nil), String)408class Selenium::WebDriver::Edge::Profile < ::Selenium::WebDriver::Chrome::Profile; end409class Selenium::WebDriver::Edge::Service < ::Selenium::WebDriver::Chrome::Service; end410Selenium::WebDriver::Edge::Service::DEFAULT_PORT = T.let(T.unsafe(nil), Integer)411Selenium::WebDriver::Edge::Service::EXECUTABLE = T.let(T.unsafe(nil), String)412Selenium::WebDriver::Edge::Service::MISSING_TEXT = T.let(T.unsafe(nil), String)413Selenium::WebDriver::Edge::Service::SHUTDOWN_SUPPORTED = T.let(T.unsafe(nil), TrueClass)414class Selenium::WebDriver::Element415 include ::Selenium::WebDriver::SearchContext416 include ::Selenium::WebDriver::TakesScreenshot417 def initialize(bridge, id); end418 def ==(other); end419 def [](name); end420 def accessible_name; end421 def all(*args); end422 def aria_role; end423 def as_json(*_arg0); end424 def attribute(name); end425 def clear; end426 def click; end427 def css_value(prop); end428 def displayed?; end429 def dom_attribute(name); end430 def enabled?; end431 def eql?(other); end432 def first(*args); end433 def hash; end434 def inspect; end435 def location; end436 def location_once_scrolled_into_view; end437 def property(name); end438 def rect; end439 def ref; end440 def selected?; end441 def send_key(*args); end442 def send_keys(*args); end443 def shadow_root; end444 def size; end445 def style(prop); end446 def submit; end447 def tag_name; end448 def text; end449 def to_json(*_arg0); end450 private451 def bridge; end452 def screenshot; end453 def selectable?; end454end455Selenium::WebDriver::Element::ELEMENT_KEY = T.let(T.unsafe(nil), String)456module Selenium::WebDriver::Error457 class << self458 def for_error(error); end459 end460end461class Selenium::WebDriver::Error::DetachedShadowRootError < ::Selenium::WebDriver::Error::WebDriverError; end462class Selenium::WebDriver::Error::ElementClickInterceptedError < ::Selenium::WebDriver::Error::WebDriverError; end463class Selenium::WebDriver::Error::ElementNotInteractableError < ::Selenium::WebDriver::Error::WebDriverError; end464class Selenium::WebDriver::Error::InsecureCertificateError < ::Selenium::WebDriver::Error::WebDriverError; end465class Selenium::WebDriver::Error::InvalidArgumentError < ::Selenium::WebDriver::Error::WebDriverError; end466class Selenium::WebDriver::Error::InvalidCookieDomainError < ::Selenium::WebDriver::Error::WebDriverError; end467class Selenium::WebDriver::Error::InvalidElementStateError < ::Selenium::WebDriver::Error::WebDriverError; end468class Selenium::WebDriver::Error::InvalidSelectorError < ::Selenium::WebDriver::Error::WebDriverError; end469class Selenium::WebDriver::Error::InvalidSessionIdError < ::Selenium::WebDriver::Error::WebDriverError; end470class Selenium::WebDriver::Error::JavascriptError < ::Selenium::WebDriver::Error::WebDriverError; end471class Selenium::WebDriver::Error::MoveTargetOutOfBoundsError < ::Selenium::WebDriver::Error::WebDriverError; end472class Selenium::WebDriver::Error::NoSuchAlertError < ::Selenium::WebDriver::Error::WebDriverError; end473class Selenium::WebDriver::Error::NoSuchCookieError < ::Selenium::WebDriver::Error::WebDriverError; end474class Selenium::WebDriver::Error::NoSuchElementError < ::Selenium::WebDriver::Error::WebDriverError; end475class Selenium::WebDriver::Error::NoSuchFrameError < ::Selenium::WebDriver::Error::WebDriverError; end476class Selenium::WebDriver::Error::NoSuchShadowRootError < ::Selenium::WebDriver::Error::WebDriverError; end477class Selenium::WebDriver::Error::NoSuchWindowError < ::Selenium::WebDriver::Error::WebDriverError; end478class Selenium::WebDriver::Error::ScriptTimeoutError < ::Selenium::WebDriver::Error::WebDriverError; end479class Selenium::WebDriver::Error::ServerError < ::StandardError480 def initialize(response); end481end482class Selenium::WebDriver::Error::SessionNotCreatedError < ::Selenium::WebDriver::Error::WebDriverError; end483class Selenium::WebDriver::Error::StaleElementReferenceError < ::Selenium::WebDriver::Error::WebDriverError; end484class Selenium::WebDriver::Error::TimeoutError < ::Selenium::WebDriver::Error::WebDriverError; end485class Selenium::WebDriver::Error::UnableToCaptureScreenError < ::Selenium::WebDriver::Error::WebDriverError; end486class Selenium::WebDriver::Error::UnableToSetCookieError < ::Selenium::WebDriver::Error::WebDriverError; end487class Selenium::WebDriver::Error::UnexpectedAlertOpenError < ::Selenium::WebDriver::Error::WebDriverError; end488class Selenium::WebDriver::Error::UnknownCommandError < ::Selenium::WebDriver::Error::WebDriverError; end489class Selenium::WebDriver::Error::UnknownError < ::Selenium::WebDriver::Error::WebDriverError; end490class Selenium::WebDriver::Error::UnknownMethodError < ::Selenium::WebDriver::Error::WebDriverError; end491class Selenium::WebDriver::Error::UnsupportedOperationError < ::Selenium::WebDriver::Error::WebDriverError; end492class Selenium::WebDriver::Error::WebDriverError < ::StandardError; end493module Selenium::WebDriver::FileReaper494 class << self495 def <<(file); end496 def reap(file); end497 def reap!; end498 def reap=(_arg0); end499 def reap?; end500 def tmp_files; end501 end502end503module Selenium::WebDriver::Firefox504 class << self505 def driver_path; end506 def driver_path=(path); end507 def path; end508 def path=(path); end509 end510end511Selenium::WebDriver::Firefox::DEFAULT_ASSUME_UNTRUSTED_ISSUER = T.let(T.unsafe(nil), TrueClass)512Selenium::WebDriver::Firefox::DEFAULT_PORT = T.let(T.unsafe(nil), Integer)513Selenium::WebDriver::Firefox::DEVTOOLS_VERSION = T.let(T.unsafe(nil), Integer)514class Selenium::WebDriver::Firefox::Driver < ::Selenium::WebDriver::Driver515 def browser; end516 private517 def devtools_url; end518 def devtools_version; end519end520Selenium::WebDriver::Firefox::Driver::EXTENSIONS = T.let(T.unsafe(nil), Array)521class Selenium::WebDriver::Firefox::Extension522 def initialize(path); end523 def write_to(extensions_dir); end524 private525 def applications_gecko_id(manifest); end526 def create_root; end527 def name_and_version(manifest); end528 def read_id(directory); end529 def read_id_from_install_rdf(directory); end530 def read_id_from_manifest_json(directory); end531end532Selenium::WebDriver::Firefox::Extension::NAMESPACE = T.let(T.unsafe(nil), String)533module Selenium::WebDriver::Firefox::Features534 def commands(command); end535 def context; end536 def context=(context); end537 def full_screenshot; end538 def install_addon(path, temporary); end539 def uninstall_addon(id); end540end541Selenium::WebDriver::Firefox::Features::FIREFOX_COMMANDS = T.let(T.unsafe(nil), Hash)542class Selenium::WebDriver::Firefox::Options < ::Selenium::WebDriver::Options543 def initialize(log_level: T.unsafe(nil), **opts); end544 def add_argument(arg); end545 def add_preference(name, value); end546 def debugger_address; end547 def debugger_address=(_arg0); end548 def enable_android(package: T.unsafe(nil), serial_number: T.unsafe(nil), activity: T.unsafe(nil), intent_arguments: T.unsafe(nil)); end549 def headless!; end550 def log_level; end551 def log_level=(level); end552 def profile; end553 def profile=(profile); end554 private555 def camelize?(key); end556 def process_browser_options(browser_options); end557 def process_profile(profile); end558end559Selenium::WebDriver::Firefox::Options::BROWSER = T.let(T.unsafe(nil), String)560Selenium::WebDriver::Firefox::Options::CAPABILITIES = T.let(T.unsafe(nil), Hash)561Selenium::WebDriver::Firefox::Options::KEY = T.let(T.unsafe(nil), String)562class Selenium::WebDriver::Firefox::Profile563 include ::Selenium::WebDriver::ProfileHelper564 extend ::Selenium::WebDriver::ProfileHelper::ClassMethods565 def initialize(model = T.unsafe(nil)); end566 def []=(key, value); end567 def add_extension(path, name = T.unsafe(nil)); end568 def as_json; end569 def layout_on_disk; end570 def load_no_focus_lib=(_arg0); end571 def log_file; end572 def log_file=(file); end573 def name; end574 def port=(port); end575 def proxy=(proxy); end576 def secure_ssl=(_arg0); end577 private578 def delete_extensions_cache(directory); end579 def delete_lock_files(directory); end580 def extension_name_for(path); end581 def install_extensions(directory); end582 def read_model_prefs; end583 def read_user_prefs(path); end584 def set_manual_proxy_preference(key, value); end585 def stringified?(str); end586 def update_user_prefs_in(directory); end587 def write_prefs(prefs, path); end588 class << self589 def decoded(json); end590 def from_name(name); end591 def ini; end592 end593end594Selenium::WebDriver::Firefox::Profile::DEFAULT_PREFERENCES = T.let(T.unsafe(nil), Hash)595Selenium::WebDriver::Firefox::Profile::VALID_PREFERENCE_TYPES = T.let(T.unsafe(nil), Array)596class Selenium::WebDriver::Firefox::ProfilesIni597 def initialize; end598 def [](name); end599 def refresh; end600 private601 def parse; end602 def path_for(name, is_relative, path); end603end604class Selenium::WebDriver::Firefox::Service < ::Selenium::WebDriver::Service605 private606 def extract_service_args(driver_opts); end607end608Selenium::WebDriver::Firefox::Service::DEFAULT_PORT = T.let(T.unsafe(nil), Integer)609Selenium::WebDriver::Firefox::Service::EXECUTABLE = T.let(T.unsafe(nil), String)610Selenium::WebDriver::Firefox::Service::MISSING_TEXT = T.let(T.unsafe(nil), String)611module Selenium::WebDriver::HTML5; end612class Selenium::WebDriver::HTML5::LocalStorage613 include ::Enumerable614 include ::Selenium::WebDriver::HTML5::SharedWebStorage615 def initialize(bridge); end616 def [](key); end617 def []=(key, value); end618 def clear; end619 def delete(key); end620 def keys; end621 def size; end622end623class Selenium::WebDriver::HTML5::SessionStorage624 include ::Enumerable625 include ::Selenium::WebDriver::HTML5::SharedWebStorage626 def initialize(bridge); end627 def [](key); end628 def []=(key, value); end629 def clear; end630 def delete(key); end631 def keys; end632 def size; end633end634module Selenium::WebDriver::HTML5::SharedWebStorage635 include ::Enumerable636 def each; end637 def empty?; end638 def fetch(key); end639 def has_key?(key); end640 def key?(key); end641 def member?(key); end642end643module Selenium::WebDriver::IE644 class << self645 def driver_path; end646 def driver_path=(path); end647 end648end649class Selenium::WebDriver::IE::Driver < ::Selenium::WebDriver::Driver650 def browser; end651end652Selenium::WebDriver::IE::Driver::EXTENSIONS = T.let(T.unsafe(nil), Array)653class Selenium::WebDriver::IE::Options < ::Selenium::WebDriver::Options654 def initialize(**opts); end655 def add_argument(arg); end656 def args; end657 private658 def process_browser_options(browser_options); end659end660Selenium::WebDriver::IE::Options::BROWSER = T.let(T.unsafe(nil), String)661Selenium::WebDriver::IE::Options::CAPABILITIES = T.let(T.unsafe(nil), Hash)662Selenium::WebDriver::IE::Options::KEY = T.let(T.unsafe(nil), String)663Selenium::WebDriver::IE::Options::SCROLL_BOTTOM = T.let(T.unsafe(nil), Integer)664Selenium::WebDriver::IE::Options::SCROLL_TOP = T.let(T.unsafe(nil), Integer)665class Selenium::WebDriver::IE::Service < ::Selenium::WebDriver::Service666 private667 def extract_service_args(driver_opts); end668end669Selenium::WebDriver::IE::Service::DEFAULT_PORT = T.let(T.unsafe(nil), Integer)670Selenium::WebDriver::IE::Service::EXECUTABLE = T.let(T.unsafe(nil), String)671Selenium::WebDriver::IE::Service::MISSING_TEXT = T.let(T.unsafe(nil), String)672Selenium::WebDriver::IE::Service::SHUTDOWN_SUPPORTED = T.let(T.unsafe(nil), TrueClass)673module Selenium::WebDriver::Interactions674 class << self675 def key(name); end676 def none(name = T.unsafe(nil)); end677 def pointer(kind, **kwargs); end678 end679end680class Selenium::WebDriver::Interactions::InputDevice681 def initialize(name = T.unsafe(nil)); end682 def actions; end683 def add_action(action); end684 def clear_actions; end685 def create_pause(duration = T.unsafe(nil)); end686 def name; end687 def no_actions?; end688end689class Selenium::WebDriver::Interactions::Interaction690 def initialize(source); end691 def source; end692end693Selenium::WebDriver::Interactions::Interaction::PAUSE = T.let(T.unsafe(nil), Symbol)694Selenium::WebDriver::Interactions::KEY = T.let(T.unsafe(nil), Symbol)695class Selenium::WebDriver::Interactions::KeyInput < ::Selenium::WebDriver::Interactions::InputDevice696 def create_key_down(key); end697 def create_key_up(key); end698 def encode; end699 def type; end700end701Selenium::WebDriver::Interactions::KeyInput::SUBTYPES = T.let(T.unsafe(nil), Hash)702class Selenium::WebDriver::Interactions::KeyInput::TypingInteraction < ::Selenium::WebDriver::Interactions::Interaction703 def initialize(source, type, key); end704 def assert_type(type); end705 def encode; end706 def type; end707end708Selenium::WebDriver::Interactions::NONE = T.let(T.unsafe(nil), Symbol)709class Selenium::WebDriver::Interactions::NoneInput < ::Selenium::WebDriver::Interactions::InputDevice710 def encode; end711 def type; end712end713Selenium::WebDriver::Interactions::POINTER = T.let(T.unsafe(nil), Symbol)714class Selenium::WebDriver::Interactions::Pause < ::Selenium::WebDriver::Interactions::Interaction715 def initialize(source, duration = T.unsafe(nil)); end716 def encode; end717 def type; end718end719class Selenium::WebDriver::Interactions::PointerCancel < ::Selenium::WebDriver::Interactions::Interaction720 def encode; end721 def type; end722end723class Selenium::WebDriver::Interactions::PointerInput < ::Selenium::WebDriver::Interactions::InputDevice724 def initialize(kind, name: T.unsafe(nil)); end725 def assert_kind(pointer); end726 def create_pointer_cancel; end727 def create_pointer_down(button); end728 def create_pointer_move(duration: T.unsafe(nil), x: T.unsafe(nil), y: T.unsafe(nil), element: T.unsafe(nil), origin: T.unsafe(nil)); end729 def create_pointer_up(button); end730 def encode; end731 def kind; end732 def type; end733end734Selenium::WebDriver::Interactions::PointerInput::KIND = T.let(T.unsafe(nil), Hash)735class Selenium::WebDriver::Interactions::PointerMove < ::Selenium::WebDriver::Interactions::Interaction736 def initialize(source, duration, x, y, element: T.unsafe(nil), origin: T.unsafe(nil)); end737 def encode; end738 def type; end739end740Selenium::WebDriver::Interactions::PointerMove::ORIGINS = T.let(T.unsafe(nil), Array)741Selenium::WebDriver::Interactions::PointerMove::POINTER = T.let(T.unsafe(nil), Symbol)742Selenium::WebDriver::Interactions::PointerMove::VIEWPORT = T.let(T.unsafe(nil), Symbol)743class Selenium::WebDriver::Interactions::PointerPress < ::Selenium::WebDriver::Interactions::Interaction744 def initialize(source, direction, button); end745 def assert_button(button); end746 def assert_direction(direction); end747 def encode; end748 def type; end749end750Selenium::WebDriver::Interactions::PointerPress::BUTTONS = T.let(T.unsafe(nil), Hash)751Selenium::WebDriver::Interactions::PointerPress::DIRECTIONS = T.let(T.unsafe(nil), Hash)752Selenium::WebDriver::Interactions::SOURCE_TYPES = T.let(T.unsafe(nil), Array)753module Selenium::WebDriver::KeyActions754 def key_down(*args, device: T.unsafe(nil)); end755 def key_up(*args, device: T.unsafe(nil)); end756 def send_keys(*args, device: T.unsafe(nil)); end757 private758 def key_action(*args, action: T.unsafe(nil), device: T.unsafe(nil)); end759end760module Selenium::WebDriver::Keys761 class << self762 def [](key); end763 def encode(keys); end764 def encode_key(key); end765 end766end767Selenium::WebDriver::Keys::KEYS = T.let(T.unsafe(nil), Hash)768class Selenium::WebDriver::Location < ::Struct769 def altitude; end770 def altitude=(_); end771 def latitude; end772 def latitude=(_); end773 def longitude; end774 def longitude=(_); end775 class << self776 def [](*_arg0); end777 def inspect; end778 def members; end779 def new(*_arg0); end780 end781end782class Selenium::WebDriver::LogEntry783 def initialize(level, timestamp, message); end784 def as_json(*_arg0); end785 def level; end786 def message; end787 def time; end788 def timestamp; end789 def to_s; end790end791class Selenium::WebDriver::Logger792 extend ::Forwardable793 def initialize(progname = T.unsafe(nil)); end794 def close(*args, &block); end795 def debug(*args, &block); end796 def debug?(*args, &block); end797 def deprecate(old, new = T.unsafe(nil), id: T.unsafe(nil), reference: T.unsafe(nil), &block); end798 def error(*args, &block); end799 def error?(*args, &block); end800 def fatal(*args, &block); end801 def fatal?(*args, &block); end802 def ignore(id); end803 def info(*args, &block); end804 def info?(*args, &block); end805 def io; end806 def level(*args, &block); end807 def level=(*args, &block); end808 def output=(io); end809 def warn(message, id: T.unsafe(nil)); end810 def warn?(*args, &block); end811 private812 def create_logger(name); end813 def default_level; end814end815class Selenium::WebDriver::Logs816 def initialize(bridge); end817 def available_types; end818 def get(type); end819end820class Selenium::WebDriver::Manager821 def initialize(bridge); end822 def add_cookie(opts = T.unsafe(nil)); end823 def all_cookies; end824 def cookie_named(name); end825 def delete_all_cookies; end826 def delete_cookie(name); end827 def logs; end828 def new_window(type = T.unsafe(nil)); end829 def timeouts; end830 def window; end831 private832 def convert_cookie(cookie); end833 def datetime_at(int); end834 def seconds_from(obj); end835 def strip_port(str); end836end837Selenium::WebDriver::Manager::SECONDS_PER_DAY = T.let(T.unsafe(nil), Float)838class Selenium::WebDriver::Navigation839 def initialize(bridge); end840 def back; end841 def forward; end842 def refresh; end843 def to(url); end844end845class Selenium::WebDriver::Options846 def initialize(options: T.unsafe(nil), **opts); end847 def ==(other); end848 def add_option(name, value = T.unsafe(nil)); end849 def as_json(*_arg0); end850 def eql?(other); end851 def options; end852 def options=(_arg0); end853 private854 def camel_case(str); end855 def camelize?(_key); end856 def convert_json_key(key, camelize: T.unsafe(nil)); end857 def generate_as_json(value, camelize_keys: T.unsafe(nil)); end858 def process_browser_options(_browser_options); end859 def process_json_hash(value, camelize_keys); end860 def process_w3c_options(options); end861 def w3c?(key); end862 class << self863 def chrome(**opts); end864 def driver_path; end865 def edge(**opts); end866 def firefox(**opts); end867 def ie(**opts); end868 def internet_explorer(**opts); end869 def microsoftedge(**opts); end870 def safari(**opts); end871 def set_capabilities; end872 end873end874Selenium::WebDriver::Options::W3C_OPTIONS = T.let(T.unsafe(nil), Array)875module Selenium::WebDriver::Platform876 private877 def assert_executable(path); end878 def assert_file(path); end879 def bitsize; end880 def ci; end881 def cygwin?; end882 def cygwin_path(path, **opts); end883 def engine; end884 def exit_hook; end885 def find_binary(*binary_names); end886 def find_in_program_files(*binary_names); end887 def home; end888 def interfaces; end889 def ip; end890 def jruby?; end891 def linux?; end892 def localhost; end893 def mac?; end894 def make_writable(file); end895 def null_device; end896 def os; end897 def ruby_version; end898 def unix_path(path); end899 def windows?; end900 def windows_path(path); end901 def wrap_in_quotes_if_necessary(str); end902 def wsl?; end903 class << self904 def assert_executable(path); end905 def assert_file(path); end906 def bitsize; end907 def ci; end908 def cygwin?; end909 def cygwin_path(path, **opts); end910 def engine; end911 def exit_hook; end912 def find_binary(*binary_names); end913 def find_in_program_files(*binary_names); end914 def home; end915 def interfaces; end916 def ip; end917 def jruby?; end918 def linux?; end919 def localhost; end920 def mac?; end921 def make_writable(file); end922 def null_device; end923 def os; end924 def ruby_version; end925 def unix_path(path); end926 def windows?; end927 def windows_path(path); end928 def wrap_in_quotes_if_necessary(str); end929 def wsl?; end930 end931end932class Selenium::WebDriver::Point < ::Struct933 def x; end934 def x=(_); end935 def y; end936 def y=(_); end937 class << self938 def [](*_arg0); end939 def inspect; end940 def members; end941 def new(*_arg0); end942 end943end944module Selenium::WebDriver::PointerActions945 def click(element = T.unsafe(nil), device: T.unsafe(nil)); end946 def click_and_hold(element = T.unsafe(nil), device: T.unsafe(nil)); end947 def context_click(element = T.unsafe(nil), device: T.unsafe(nil)); end948 def default_move_duration; end949 def default_move_duration=(_arg0); end950 def double_click(element = T.unsafe(nil), device: T.unsafe(nil)); end951 def drag_and_drop(source, target, device: T.unsafe(nil)); end952 def drag_and_drop_by(source, right_by, down_by, device: T.unsafe(nil)); end953 def move_by(right_by, down_by, device: T.unsafe(nil)); end954 def move_to(element, right_by = T.unsafe(nil), down_by = T.unsafe(nil), device: T.unsafe(nil)); end955 def move_to_location(x, y, device: T.unsafe(nil)); end956 def pointer_down(button, device: T.unsafe(nil)); end957 def pointer_up(button, device: T.unsafe(nil)); end958 def release(device: T.unsafe(nil)); end959 private960 def button_action(button, action: T.unsafe(nil), device: T.unsafe(nil)); end961 def get_pointer(device = T.unsafe(nil)); end962end963class Selenium::WebDriver::PortProber964 class << self965 def above(port); end966 def free?(port); end967 end968end969Selenium::WebDriver::PortProber::IGNORED_ERRORS = T.let(T.unsafe(nil), Array)970module Selenium::WebDriver::ProfileHelper971 mixes_in_class_methods ::Selenium::WebDriver::ProfileHelper::ClassMethods972 def as_json(*_arg0); end973 def encoded; end974 def to_json(*_arg0); end975 private976 def create_tmp_copy(directory); end977 def verify_model(model); end978 class << self979 def decoded(json); end980 def included(base); end981 end982end983module Selenium::WebDriver::ProfileHelper::ClassMethods984 def from_json(json); end985end986class Selenium::WebDriver::Proxy987 def initialize(opts = T.unsafe(nil)); end988 def ==(other); end989 def as_json(*_arg0); end990 def auto_detect; end991 def auto_detect=(bool); end992 def eql?(other); end993 def ftp; end994 def ftp=(value); end995 def http; end996 def http=(value); end997 def no_proxy; end998 def no_proxy=(value); end999 def pac; end1000 def pac=(url); end1001 def socks; end1002 def socks=(value); end1003 def socks_password; end1004 def socks_password=(value); end1005 def socks_username; end1006 def socks_username=(value); end1007 def socks_version; end1008 def socks_version=(value); end1009 def ssl; end1010 def ssl=(value); end1011 def to_json(*_arg0); end1012 def type; end1013 def type=(type); end1014 class << self1015 def json_create(data); end1016 end1017end1018Selenium::WebDriver::Proxy::ALLOWED = T.let(T.unsafe(nil), Hash)1019Selenium::WebDriver::Proxy::TYPES = T.let(T.unsafe(nil), Hash)1020class Selenium::WebDriver::Rectangle < ::Struct1021 def height; end1022 def height=(_); end1023 def width; end1024 def width=(_); end1025 def x; end1026 def x=(_); end1027 def y; end1028 def y=(_); end1029 class << self1030 def [](*_arg0); end1031 def inspect; end1032 def members; end1033 def new(*_arg0); end1034 end1035end1036module Selenium::WebDriver::Remote; end1037class Selenium::WebDriver::Remote::Bridge1038 include ::Selenium::WebDriver::Atoms1039 def initialize(url:, http_client: T.unsafe(nil)); end1040 def accept_alert; end1041 def action(async = T.unsafe(nil)); end1042 def actions(async = T.unsafe(nil)); end1043 def active_element; end1044 def add_cookie(cookie); end1045 def alert=(keys); end1046 def alert_text; end1047 def browser; end1048 def capabilities; end1049 def clear_element(element); end1050 def clear_local_storage; end1051 def clear_session_storage; end1052 def click_element(element); end1053 def close; end1054 def cookie(name); end1055 def cookies; end1056 def create_session(capabilities); end1057 def delete_all_cookies; end1058 def delete_cookie(name); end1059 def dismiss_alert; end1060 def element_aria_label(element); end1061 def element_aria_role(element); end1062 def element_attribute(element, name); end1063 def element_displayed?(element); end1064 def element_dom_attribute(element, name); end1065 def element_enabled?(element); end1066 def element_location(element); end1067 def element_location_once_scrolled_into_view(element); end1068 def element_property(element, name); end1069 def element_rect(element); end1070 def element_screenshot(element); end1071 def element_selected?(element); end1072 def element_size(element); end1073 def element_tag_name(element); end1074 def element_text(element); end1075 def element_value(element); end1076 def element_value_of_css_property(element, prop); end1077 def execute_async_script(script, *args); end1078 def execute_script(script, *args); end1079 def file_detector; end1080 def file_detector=(_arg0); end1081 def find_element_by(how, what, parent_ref = T.unsafe(nil)); end1082 def find_elements_by(how, what, parent_ref = T.unsafe(nil)); end1083 def full_screen_window; end1084 def get(url); end1085 def go_back; end1086 def go_forward; end1087 def http; end1088 def http=(_arg0); end1089 def keyboard; end1090 def local_storage_item(key, value = T.unsafe(nil)); end1091 def local_storage_keys; end1092 def local_storage_size; end1093 def manage; end1094 def maximize_window(handle = T.unsafe(nil)); end1095 def minimize_window; end1096 def mouse; end1097 def new_window(type); end1098 def page_source; end1099 def print_page(options = T.unsafe(nil)); end1100 def quit; end1101 def refresh; end1102 def release_actions; end1103 def remove_local_storage_item(key); end1104 def remove_session_storage_item(key); end1105 def reposition_window(x, y); end1106 def resize_window(width, height, handle = T.unsafe(nil)); end1107 def screenshot; end1108 def send_actions(data); end1109 def send_keys_to_element(element, keys); end1110 def session_id; end1111 def session_storage_item(key, value = T.unsafe(nil)); end1112 def session_storage_keys; end1113 def session_storage_size; end1114 def set_window_rect(x: T.unsafe(nil), y: T.unsafe(nil), width: T.unsafe(nil), height: T.unsafe(nil)); end1115 def shadow_root(element); end1116 def status; end1117 def submit_element(element); end1118 def switch_to_active_element; end1119 def switch_to_default_content; end1120 def switch_to_frame(id); end1121 def switch_to_parent_frame; end1122 def switch_to_window(name); end1123 def timeouts; end1124 def timeouts=(timeouts); end1125 def title; end1126 def upload(local_file); end1127 def url; end1128 def window_handle; end1129 def window_handles; end1130 def window_position; end1131 def window_rect; end1132 def window_size(handle = T.unsafe(nil)); end1133 private1134 def commands(command); end1135 def convert_locator(how, what); end1136 def element_id_from(id); end1137 def escape_css(string); end1138 def escaper; end1139 def execute(command, opts = T.unsafe(nil), command_hash = T.unsafe(nil)); end1140 def prepare_capabilities_payload(capabilities); end1141 def shadow_root_id_from(id); end1142 def unwrap_script_result(arg); end1143end1144Selenium::WebDriver::Remote::Bridge::COMMANDS = T.let(T.unsafe(nil), Hash)1145Selenium::WebDriver::Remote::Bridge::ESCAPE_CSS_REGEXP = T.let(T.unsafe(nil), Regexp)1146Selenium::WebDriver::Remote::Bridge::PORT = T.let(T.unsafe(nil), Integer)1147Selenium::WebDriver::Remote::Bridge::QUIT_ERRORS = T.let(T.unsafe(nil), Array)1148Selenium::WebDriver::Remote::Bridge::UNICODE_CODE_POINT = T.let(T.unsafe(nil), Integer)1149class Selenium::WebDriver::Remote::Capabilities1150 def initialize(opts = T.unsafe(nil)); end1151 def ==(other); end1152 def [](key); end1153 def []=(key, value); end1154 def accept_insecure_certs; end1155 def accept_insecure_certs=(value); end1156 def as_json(*_arg0); end1157 def browser_name; end1158 def browser_name=(value); end1159 def browser_version; end1160 def browser_version=(value); end1161 def eql?(other); end1162 def implicit_timeout; end1163 def implicit_timeout=(timeout); end1164 def merge!(other); end1165 def page_load_strategy; end1166 def page_load_strategy=(value); end1167 def page_load_timeout; end1168 def page_load_timeout=(timeout); end1169 def platform; end1170 def platform=(value); end1171 def platform_name; end1172 def platform_name=(value); end1173 def proxy; end1174 def proxy=(proxy); end1175 def remote_session_id; end1176 def remote_session_id=(value); end1177 def script_timeout; end1178 def script_timeout=(timeout); end1179 def set_window_rect; end1180 def set_window_rect=(value); end1181 def strict_file_interactability; end1182 def strict_file_interactability=(value); end1183 def timeouts; end1184 def timeouts=(timeouts); end1185 def to_json(*_arg0); end1186 def unhandled_prompt_behavior; end1187 def unhandled_prompt_behavior=(value); end1188 def version; end1189 def version=(value); end1190 def web_socket_url; end1191 def web_socket_url=(value); end1192 protected1193 def capabilities; end1194 private1195 def convert_key(key); end1196 def convert_value(key, value); end1197 def process_capabilities(key, value, hash); end1198 class << self1199 def always_match(capabilities); end1200 def camel_case(str_or_sym); end1201 def chrome(opts = T.unsafe(nil)); end1202 def edge(opts = T.unsafe(nil)); end1203 def ff(opts = T.unsafe(nil)); end1204 def firefox(opts = T.unsafe(nil)); end1205 def first_match(*capabilities); end1206 def htmlunit(opts = T.unsafe(nil)); end1207 def ie(opts = T.unsafe(nil)); end1208 def internet_explorer(opts = T.unsafe(nil)); end1209 def json_create(data); end1210 def microsoftedge(opts = T.unsafe(nil)); end1211 def safari(opts = T.unsafe(nil)); end1212 private1213 def process_timeouts(caps, timeouts); end1214 end1215end1216Selenium::WebDriver::Remote::Capabilities::KNOWN = T.let(T.unsafe(nil), Array)1217class Selenium::WebDriver::Remote::Driver < ::Selenium::WebDriver::Driver1218 include ::Selenium::WebDriver::DriverExtensions::UploadsFiles1219 include ::Selenium::WebDriver::DriverExtensions::HasSessionId1220 include ::Selenium::WebDriver::DriverExtensions::HasRemoteStatus1221 def initialize(bridge: T.unsafe(nil), listener: T.unsafe(nil), **opts); end1222 private1223 def devtools_url; end1224 def devtools_version; end1225end1226module Selenium::WebDriver::Remote::Http; end1227class Selenium::WebDriver::Remote::Http::Common1228 def call(verb, url, command_hash); end1229 def close; end1230 def quit_errors; end1231 def server_url=(_arg0); end1232 private1233 def create_response(code, body, content_type); end1234 def request(*_arg0); end1235 def server_url; end1236end1237Selenium::WebDriver::Remote::Http::Common::CONTENT_TYPE = T.let(T.unsafe(nil), String)1238Selenium::WebDriver::Remote::Http::Common::DEFAULT_HEADERS = T.let(T.unsafe(nil), Hash)1239Selenium::WebDriver::Remote::Http::Common::MAX_REDIRECTS = T.let(T.unsafe(nil), Integer)1240class Selenium::WebDriver::Remote::Http::Default < ::Selenium::WebDriver::Remote::Http::Common1241 def initialize(open_timeout: T.unsafe(nil), read_timeout: T.unsafe(nil)); end1242 def close; end1243 def open_timeout; end1244 def open_timeout=(_arg0); end1245 def proxy=(_arg0); end1246 def read_timeout; end1247 def read_timeout=(_arg0); end1248 private1249 def http; end1250 def new_http_client; end1251 def new_request_for(verb, url, headers, payload); end1252 def proxy; end1253 def request(verb, url, headers, payload, redirects = T.unsafe(nil)); end1254 def response_for(request); end1255 def start(http); end1256 def use_proxy?; end1257end1258Selenium::WebDriver::Remote::Http::Default::MAX_RETRIES = T.let(T.unsafe(nil), Integer)1259class Selenium::WebDriver::Remote::Response1260 def initialize(code, payload = T.unsafe(nil)); end1261 def [](key); end1262 def code; end1263 def error; end1264 def payload; end1265 private1266 def add_backtrace(ex, server_trace); end1267 def assert_ok; end1268 def backtrace_from_remote(server_trace); end1269 def process_error; end1270end1271module Selenium::WebDriver::Safari1272 class << self1273 def driver_path; end1274 def driver_path=(path); end1275 def path; end1276 def path=(path); end1277 def technology_preview; end1278 def technology_preview!; end1279 def technology_preview?; end1280 def use_technology_preview; end1281 def use_technology_preview=(_arg0); end1282 end1283end1284class Selenium::WebDriver::Safari::Driver < ::Selenium::WebDriver::Driver1285 def browser; end1286end1287Selenium::WebDriver::Safari::Driver::EXTENSIONS = T.let(T.unsafe(nil), Array)1288module Selenium::WebDriver::Safari::Features1289 def attach_debugger; end1290 def commands(command); end1291 def permissions; end1292 def permissions=(permissions); end1293end1294Selenium::WebDriver::Safari::Features::SAFARI_COMMANDS = T.let(T.unsafe(nil), Hash)1295class Selenium::WebDriver::Safari::Options < ::Selenium::WebDriver::Options...
browser.rb
Source:browser.rb
...107 end108 def setup_firefox109 if ExecutionEnvironment.selenium_grid_hub.nil?110 profile = Selenium::WebDriver::Firefox::Profile.new111 profile.log_file = browser_log_file_path("firefox")112 profile['network.cookie.cookieBehavior'] = 2 if @disable_cookies113 if ExecutionEnvironment::Features.noscript?114 untrusted = %w(bazaarvoice.com)115 profile.add_extension("vendor/firefox_extensions/noscript.xpi")116 profile["noscript.ABE.migration"] = 1117 profile["noscript.global"] = true118 profile["noscript.gtemp"] = ""119 profile["noscript.temp"] = ""120 profile["noscript.untrusted"] = untrusted.map { |domain| [domain, "http://#{domain}", "https://#{domain}"] }.flatten.join(' ')121 profile["noscript.version"] = "2.6.8.19"122 profile["noscript.visibleUIChecked"] = true123 Log.instance.debug "Running with 'noscript' plugin. Untrusted domains: #{untrusted}"124 end125 if ExecutionEnvironment::Features.akamai?126 profile.add_extension('vendor/firefox_extensions/modify_headers-0.7.1.1-fx.xpi', 'modifyheaders')127 profile.add_extension('vendor/firefox_extensions/firebug-2.0.4-fx.xpi', 'firebug')128 profile.add_extension('vendor/firefox_extensions/netExport-0.9b6.xpi', 'netexport')129 profile['modifyheaders.config.active'] = true130 profile['modifyheaders.config.alwaysOn'] = true131 profile['modifyheaders.config.openNewTab'] = true132 profile['modifyheaders.start'] = true133 headers = 'akamai-x-cache-on, akamai-x-cache-remote-on, akamai-x-check-cacheable, akamai-x-get-cache-key, akamai-x-get-extracted-values, akamai-x-get-nonces, akamai-x-get-ssl-client-session-id, akamai-x-get-true-cache-key, akamai-x-serial-no, akamai-x-cache-remote-on'134 profile['modifyheaders.headers.count'] = 1135 profile['modifyheaders.headers.action0'] = 'Add'136 profile['modifyheaders.headers.name0'] = 'Pragma'137 profile['modifyheaders.headers.value0'] = headers138 profile['modifyheaders.headers.enabled0'] = true139 profile['extensions.firebug.currentVersion'] = '2.0.4'140 profile['extensions.firebug.addonBarOpened'] = true141 profile['extensions.firebug.console.enableSites'] = true142 profile['extensions.firebug.script.enableSites'] = true143 profile['extensions.firebug.net.enableSites'] = true144 profile['extensions.firebug.previousPlacement'] = 1145 profile['extensions.firebug.allPagesActivation'] = 'on'146 profile['extensions.firebug.onByDefault'] = true147 profile['extensions.firebug.defaultPanelName'] = 'net'148 profile['extensions.firebug.netexport.alwaysEnableAutoExport'] = true149 profile['extensions.firebug.netexport.autoExportToFile'] = true150 profile['extensions.firebug.netexport.Automation'] = true151 profile['extensions.firebug.netexport.showPreview'] = false152 profile['extensions.firebug.netexport.includeResponseBodies'] = false153 profile['extensions.firebug.netexport.secretToken'] = 'macys'154 if ExecutionEnvironment.host_os == :windows155 profile['extensions.firebug.netexport.defaultLogDir'] = ExecutionEnvironment.log_directory.gsub('/','\\')156 else157 profile['extensions.firebug.netexport.defaultLogDir'] = ExecutionEnvironment.log_directory158 end159 end160 profile.proxy = start_proxy if ExecutionEnvironment.proxy_enabled?161 profile.add_extension('vendor/firefox_extensions/JSErrorCollector.xpi')162 if ExecutionEnvironment.digital_analytics_enabled?('plugin')163 profile.add_extension("vendor/firefox_extensions/coremetricstools@coremetrics.xpi")164 end165 Selenium::WebDriver.for :firefox, :profile => profile166 else167 caps = Selenium::WebDriver::Remote::Capabilities.firefox(common_capabilities)168 Selenium::WebDriver.for(:remote, :url => ExecutionEnvironment.selenium_grid_hub, :desired_capabilities => caps)169 end170 end171 def setup_chrome172 unless ExecutionEnvironment.selenium_grid_hub.nil?173 caps = Selenium::WebDriver::Remote::Capabilities.chrome(common_capabilities)174 return Selenium::WebDriver.for :remote, :url => ExecutionEnvironment.selenium_grid_hub, :desired_capabilities => caps175 end176 if ExecutionEnvironment::Features.akamai?177 extensions = "--load-extension=#{Dir.getwd}/vendor/chrome_extensions/HTTP_Spy/,#{Dir.getwd}/vendor/chrome_extensions/Modify_Headers/"178 return Selenium::WebDriver.for :chrome, :switches => [extensions], :proxy => proxy179 end180 caps = Selenium::WebDriver::Remote::Capabilities.chrome("chromeOptions" => {"args" => ["test-type", "--disable-extensions", "--kiosk-printing"]})181 Selenium::WebDriver.for :chrome, desired_capabilities: caps, proxy: proxy182 end183 def setup_ie184 opts = { :'ie.ensureCleanSession' => true, :enablePersistentHover => false, :nativeEvents => false }185 if ExecutionEnvironment.selenium_grid_hub.nil?186 caps = Selenium::WebDriver::Remote::Capabilities.internet_explorer(opts)187 Selenium::WebDriver.for :ie, :desired_capabilities => caps, :native_events => false188 else189 caps = Selenium::WebDriver::Remote::Capabilities.internet_explorer(opts.merge(common_capabilities))190 Selenium::WebDriver.for(:remote, :url => ExecutionEnvironment.selenium_grid_hub, :desired_capabilities => caps)191 end192 # This is breaking IE execution because the Selenium browser instance isn't returned.193 # In addition, the profile variable doesn't exist.194 #195 # if ExecutionEnvironment.proxy_enabled?196 # profile.proxy = Proxy::start_proxy.selenium_proxy(:http, :ssl) #proxy.selenium_proxy197 # end198 end199 def setup_phantomjs200 PhantomJS.instance.start_js_server201 Selenium::WebDriver.for(:phantomjs, url: 'http://localhost:' + ENV["PHANTOMJS_PORT"])202 end203 def setup_safari204 safari_user=File.expand_path('~')205 safari_path="#{safari_user}/Library/Safari"206 #FileUtils.rm_rf Dir.glob("#{safari_path}/*")207 dirs = Dir.entries("#{safari_path}").reject { |f| f =~ /Extensions|.DS_Store/ }208 dirs.each do |dir|209 unless dir.to_s == "." || dir.to_s == ".."210 FileUtils.rm_rf File.join("#{safari_path}", dir)211 end212 end213 file_location = File.expand_path File.dirname(__FILE__)214 cmd = "osascript #{file_location}/safaricookie_applescript.scpt"215 system cmd216 browser=Selenium::WebDriver.for :safari217 browser218 end219 def browser_log_file_path(browser_name)220 # The log file name must be an absolute path, and the slashes must be correct for either Windows or Linux.221 # Use the cucumber log's timestamp in the browser log file name.222 log_file = "#{ExecutionEnvironment.log_directory}/#{browser_name}_#{Log.instance.timestamp}.log"223 log_file.gsub!('/', '\\') if ExecutionEnvironment.host_os == :windows224 log_file225 end226 #Selenium maximize window is broken on OSX for chrome and it works for other browsers227 def maximize_browser_window228 if ExecutionEnvironment.host_os == :macosx229 position = @browser.manage.window.position230 if position.x + position.y > 0231 position.x = 0232 position.y = 0233 @browser.manage.window.position = position234 end235 max_width, max_height = @browser.execute_script("return [window.screen.availWidth, window.screen.availHeight];")236 @browser.manage.window.resize_to(max_width, max_height)237 else238 @browser.manage.window.maximize...
browser_settings.rb
Source:browser_settings.rb
...22 @browser = start_browser(@browser_name)23 raise "Nil class error : No valid browser object found for #{str_browser_name}" if @browser.nil?24 return @browser25 rescue Exception => ex26 $log.error("Error in launching browser #{str_browser_name} : #{ex}")27 exit28 end29 end30 # Description : deletes all cookies from the current browser31 # Author : Chandra sekaran32 #33 def self.delete_cookies34 begin35 @browser.manage.delete_all_cookies36 $log.success("#{@browser_name} browser cookies deleted successfully")37 rescue Exception => ex38 $log.error("Error while deleting the " + @browser_name + " browser cookies - #{ex}")39 exit40 end41 end42 # Description : launches the given URL in the current browser43 # Author : Chandra sekaran44 # Arguments :45 # str_url : url of the web site to be launched46 #47 def self.launch_url(str_url)48 begin49 #delete_cookies50 @browser.navigate.to(str_url)51 $log.info("#{str_url} launched successfully")52 rescue Exception => ex53 $log.error("Error in launching URL - #{str_url}")54 exit55 end56 end57 # Description : sets the timeout limit to find elements58 # Author : Chandra sekaran59 # Arguments :60 # num_timeout : numeric timeout value61 #62 def self.set_timeout(num_timeout)63 begin64 @browser.manage.timeouts.implicit_wait = num_timeout65 $log.success("Selenium timeout set to " + num_timeout.to_s)66 rescue Exception => ex67 $log.error("Error in setting the selenium timeout to: " + num_timeout.to_s)68 exit69 end70 end71 # Description : starts the browser and returns the browser object72 # Author : Chandra sekaran73 # Arguments :74 # str_browser : browser name75 # Return values :76 # @browser : browser object of the launched browser77 #78 def self.start_browser(str_browser)79 @browser = ''80 if PLATFORM == "desktop"81 @browser = setup_desktop_browser(str_browser)82 @browser.manage.window.maximize if !@browser.nil?83 else84 @browser = setup_mobile_browser85 end86 return @browser87 end88 # Description : closes the current browser89 # Author : Chandra sekaran90 #91 def self.close_browser92 begin93 @browser.close94 $log.success("Current browser closed successfully")95 $log_env.success("Current browser closed successfully")96 rescue Exception => ex97 $log.error("Error while closing the current browser - #{ex}")98 exit99 end100 end101 # Description : closes the current browser102 # Author : Chandra sekaran103 #104 def self.quit_browser105 begin106 @browser.quit107 #$log.success("Current browser closed successfully")108 $log_env.success("Current browser closed successfully")109 rescue Exception => ex110 $log.error("Error while closing the current browser - #{ex}")111 exit112 end113 end114 # Description : restarts the current browser115 # Author : Chandra sekaran116 # Return value :117 # @browser : browser object of the new browser118 #119 def self.restart_browser120 begin121 quit_browser122 @browser_name = BROWSER123 $log.info("Restarting the browser (#{@browser_name})")124 @browser = browser_setup(@browser_name)125 @browser126 rescue Exception => ex127 $log.error("Error while restarting browser - #{ex}")128 exit129 end130 end131 # Description : launches the desktop browser132 # Author : Chandra sekaran133 # Arguments :134 # str_browser : browser name135 # Return value :136 # @browser : browser object of the new browser137 #138 def self.setup_desktop_browser(str_browser)139 begin140 #$log.info("Starting desktop browser : " + str_browser)141 @browser = nil142 case str_browser.downcase143 when "internet_explorer"144 @browser = Selenium::WebDriver.for :internet_explorer145 #caps = Selenium::WebDriver::Remote::Capabilities.internet_explorer("download" => {146 # :prompt_for_download => false,147 # :default_directory => File.expand_path($current_log_dir)148 #})149 #@browser = Selenium::WebDriver.for :internet_explorer, desired_capabilities: caps150 when "firefox"151 @browser = Selenium::WebDriver.for :firefox152 when "chrome"153 caps = Selenium::WebDriver::Remote::Capabilities.chrome("chromeOptions" => {"args" => ["test-type" ]})154 prefs = {155 :download => {156 :prompt_for_download => false,157 :default_directory => File.expand_path($current_log_dir)158 }159 }160 @browser = Selenium::WebDriver.for :chrome, :prefs => prefs, desired_capabilities: caps161 when "safari"162 @browser = Selenium::WebDriver.for :safari163 when "ios"164 if RUBY_PLATFORM.downcase.include?("darwin")165 @browser = Selenium::WebDriver.for :iphone166 else167 raise "You can't run IOS tests on non-mac machine"168 end169 else170 raise "Could not determine the browser"171 end172 $log.success("Successfully launched desktop #{str_browser} browser (Version : #{@browser.capabilities[:version]}, Resolution : '#{@browser.execute_script('return screen.width')}x#{@browser.execute_script('return screen.height')}')")173 return @browser174 rescue Exception => ex175 $log.error("Error in starting desktop browser : " + str_browser)176 exit177 end178 end179 # Description : saves the screenshot of the webpage as png file180 # Author : Chandra sekaran181 # Arguments :182 # str_module_name : module name under features directory183 #184 def self.capture_screenshot(str_module_name)185 begin186 str_imgdir_path = "#{$current_log_dir}/screenshot"187 unless File.directory?(str_imgdir_path) # creates a new directory188 FileUtils.mkdir_p(str_imgdir_path)189 end190 str_image = "/#{str_module_name}_#{Time.now.strftime(DATETIME_FORMAT)}.png"191 str_imgdir_path << str_image # adds image file name to the directory192 @browser.save_screenshot(str_imgdir_path) # saves the screenshot image to the directory193 $log.info("Screenshot is saved in #{str_imgdir_path}")194 return "screenshot#{str_image}"195 rescue Exception => ex196 $log.error("Error in taking screenshot for #{str_imgdir_path} : #{ex}")197 exit198 end199 end200 # Description : launches the mobile browser201 # Author : Chandra sekaran202 # Arguments :203 # @browser : browser object of the mobile browser204 #205 def self.setup_mobile_browser206 begin207 bool_device_enabled = DEVICE.nil? ? false : (DEVICE.downcase.eql?("true")? true : false)208 case(BROWSER.downcase)209 when "android", "chrome", "browser"210 @browser = setup_android(bool_device_enabled, BROWSER)211 when "safari"212 #if is_emulator_enabled213 # caps = {214 # :platform => 'Mac',215 # :device => 'iPhone Simulator',216 # :browser_name => 'iOS',217 # :version => '7.1',218 # :app => 'safari',219 # :newCommandTimeout => 60000,220 # :javascript_enabled => true221 # }222 # client = Selenium::WebDriver::Remote::Http::Default.new223 # client.timeout = 30000 # seconds224 # @browser = Selenium::WebDriver.for :remote, :url => app_url , :desired_capabilities => caps , :http_client => client225 #end226 else227 raise "Invalid browser name : #{BROWSER}"228 end229 #@browser.manage.window.hide_keyboard # not working230 return @browser231 rescue Exception => ex232 $log.error("Error while setting up mobile browser : #{ex}")233 exit234 end235 end236 # Description : launches mobile browser237 # Author : Chandra sekaran238 # Arguments :239 # str_module_name : module name under features directory240 #241 def self.setup_android(bool_device_enabled, str_browser_name)242 begin243 browser = ""244 if str_browser_name.downcase == "chrome"245 browser_name = "Chrome"246 elsif str_browser_name.downcase == "browser" || str_browser_name.downcase == "android"247 browser_name = "Browser"248 else249 raise "Profile for '#{str_browser_name}' browser does not exists"250 end251 if bool_device_enabled252 caps = { :browserName => browser_name, :platformName => "Android", :newCommandTimeout => 60000, :deviceName => "4D00C0124B174161" }253 client = Selenium::WebDriver::Remote::Http::Default.new254 client.timeout = 5000255 browser = Selenium::WebDriver.for(:remote, :url => "http://localhost:4723/wd/hub/", :http_client => client, :desired_capabilities => caps)256 else257 #caps = { :browserName => browser_name, :platform => "Android", :Version => "4.0.4", :device => "EMULATOR-5554" }258 #client = Selenium::WebDriver::Remote::Http::Default.new259 #client.timeout = 500260 #browser = Selenium::WebDriver.for(:remote, :url => "http://localhost:4723/wd/hub/", :http_client => client, :desired_capabilities => caps)261 caps = { :browserName => browser_name, :platformName => "Android", :Version => "4.4.2", :deviceName => "EMULATOR-5554" }262 client = Selenium::WebDriver::Remote::Http::Default.new263 client.timeout = 5000264 browser = Selenium::WebDriver.for(:remote, :url => "http://localhost:4723/wd/hub/", :http_client => client, :desired_capabilities => caps)265 end266 $log.success("Launched #{str_browser_name} in Android #{bool_device_enabled ? 'device' : 'emulator'} successfully")267 browser268 rescue Exception => ex269 $log.error("Error while setting Android browser profile for '#{str_browser_name}' : #{ex}")270 exit271 end272 end273 end274end...
env.rb
Source:env.rb
...6#require'rspec/expectations'7require 'rspec'8#USERS = YAML.load_file("Users/keclarke/ruby193/GP/proj-Data.yml")9#require 'rake'10#desc 'Run Cucumber features and generate an HTML summary, JUnit XML and a plain text log'11#12#Cucumber::Rake::Task.new(:features) do |t|13#14# t.cucumber_opts =15# "--no-color"16# "--format junit -o log/",17# "--format html -o log/features.html",18# "--format pretty"]19TEST_DATA_DIR = "./features/test_data"20if ENV["HEADLESS"]21 INDEX_OFFSET = 022 WEBDRIVER = false23else24 #ie = Watir::Browser.new :ie25 #firefox = Watir::Browser.new :firefox26 #chrome = Watir::Browser.new :chrome27 #opera = Watir::Browser.new :opera28# require 'selenium/webdriver'29#url = "http://#{ENV['kevinclarke2']}:#{ENV['5AyLAPWXEESrJLd3kCM9']}@hub.browserstack.com/wd/hub"30#capabilities = Selenium::WebDriver::Remote::Capabilities.new31# capabilities['os'] = ENV['BS_AUTOMATE_OS']...
capybara_config.rb
Source:capybara_config.rb
...4 require 'capybara/accessible'5 Capybara.javascript_driver = :accessible6else7 Capybara.register_driver :chrome do |app|8 Selenium::WebDriver.logger.level = :error9 Capybara::Selenium::Driver.new app,10 browser: :chrome,11 options: Selenium::WebDriver::Chrome::Options.new(12 args: %w[no-sandbox disable-dev-shm-usage disable-popup-blocking headless disable-gpu window-size=1920,1080 --enable-features=NetworkService,NetworkServiceInProcess --disable-features=VizDisplayCompositor],13 log_level: :error14 )15 end16 Capybara.javascript_driver = :chrome17 Capybara::Screenshot.register_driver(:chrome) do |driver, path|18 driver.browser.save_screenshot(path)19 end20end21Capybara.default_max_wait_time = 4522Capybara.server = :webrick
capybara.rb
Source:capybara.rb
...3require 'capybara-screenshot/rspec'4require 'capybara/rails'5RSpec.configure do6 Capybara.register_driver :chrome do |app|7 Selenium::WebDriver.logger.level = :error8 Capybara::Selenium::Driver.new app,9 browser: :chrome,10 options: Selenium::WebDriver::Chrome::Options.new(11 args: %w[headless disable-gpu window-size=1920,1080 --enable-features=NetworkService,NetworkServiceInProcess --disable-features=VizDisplayCompositor],12 log_level: :error13 )14 end15 Capybara.javascript_driver = :chrome16 Capybara::Screenshot.register_driver(:chrome) do |driver, path|17 driver.browser.save_screenshot(path)18 end19end...
log
Using AI Code Generation
1Selenium::WebDriver::Chrome::Features.new.log('test')2Selenium::WebDriver::Chrome::Features.log('test')3log('test')4log('test')5Features.log('test')6log('test')7Features.log('test')8log('test')9Featres.log('test')
log
Using AI Code Generation
1log nium::WebDriver::Chrome::Features.new.log('test')2Selenium::WebDriver::Chrome::Features.log('test')3log('test')4log('test')5Features.log('test')6log('test')7Features.log('test')8log('test')
log
Using AI Code Generation
1driver.find_element(:name, 'q').send_keys 'Selenium WebDriver'2driver.find_element(:name, 'q').submit3driver.find_element(:link_text, 'Selenium WebDriver').click4driver.find_element(:link_text, 'Downloads').click5driver.find_element(:link_text, 'Ruby').click6driver.find_element(:link_text, 'Downloads').click7driver.find_element(:link_text, 'Java').click8driver.find_element(:link_text, 'Downloads').click9driver.find_element(:link_text, 'Python').click10driver.find_element(:link_text, 'Downloads').click11driver.find_element(:link_text, 'Downloads').click12driver.find_element(:link_text, 'Javascript').click13driver.find_element(:link_text, 'Downloads').click14driver.find_element(:link_text, 'PHP').click15driver.find_element(:link_text, 'Downloads').click16driver.find_element(:link_text, 'Perl').click17driver.find_element(:link_text, 'Downloads').click18driver.find_element(:link_text, 'CSS').click19driver.find_element(:link_text, 'Downloads').click20driver.find_element(:link_text, 'HTML').click21driver.find_element(:link_text, 'Downloads').click22driver.find_element(:link_text, 'Node.js').click23driver.find_element(:link_text, 'Downloads').click24driver.find_element(:link_text, 'Rust').click25driver.find_element(:link_text, 'Downloads').click26driver.find_element(:link_text, 'Scala').click27driver.find_element(:link_text, 'Downloads').click28driver.find_element(:link_text, 'Go').click29driver.find_element(:link_text, 'Downloads').click30driver.find_element(:link_text, 'Dart').click31driver.find_element(:link_text, 'Downloads').click32driver.find_element(:link_text, 'Kotlin').click33driver.find_element(:link_text, 'Downloads').click34driver.find_element(:link_text, 'Ruby').click35driver.find_element(:link_text, 'Downloads').click
log
Using AI Code Generation
1driver.find_element(:name, 'q').send_keys 'Selenium WebDriver'2driver.find_element(:name, 'q').submit3driver.find_element(:link_text, 'Selenium WebDriver').click4driver.find_element(:link_text, 'Downloads').click5driver.find_element(:link_text, 'Ruby').click6driver.find_element(:link_text, 'Downloads').click7driver.find_element(:link_text, 'Java').click8driver.find_element(:link_text, 'Downloads').click9driver.find_element(:link_text, 'Python').click10driver.find_element(:link_text, 'Downloads').click11driver.find_element(:link_text, 'Downloads').click12driver.find_element(:link_text, 'Javascript').click13driver.find_element(:link_text, 'Downloads').click14driver.find_element(:link_text, 'PHP').click15driver.find_element(:link_text, 'Downloads').click16driver.find_element(:link_text, 'Perl').click17driver.find_element(:link_text, 'Downloads').click18driver.find_element(:link_text, 'CSS').click19driver.find_element(:link_text, 'Downloads').click20driver.find_element(:link_text, 'HTML').click21driver.find_element(:link_text, 'Downloads').click22driver.find_element(:link_text, 'Node.js').click23driver.find_element(:link_text, 'Downloads').click24driver.find_element(:link_text, 'Rust').click25driver.find_element(:link_text, 'Downloads').click26driver.find_element(:link_text, 'Scala').click27driver.find_element(:link_text, 'Downloads').click28driver.find_element(:link_text, 'Go').click29driver.find_element(:link_text, 'Downloads').click30driver.find_element(:link_text, 'Dart').click31driver.find_element(:link_text, 'Downloads').click32driver.find_element(:link_text, 'Kotlin').click33driver.find_element(:link_text, 'Downloads').click34driver.find_element(:link_text, 'Ruby').click35driver.find_element(:link_text, 'Downloads').click
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!