SeleniumHQ/selenium · error · ArgumentError

Cookie name cannot be null or empty

Error message

Cookie name cannot be null or empty

What it means

Raised by Remote::Bridge#delete_cookie (ArgumentError) when the cookie name is nil, empty, or whitespace-only (after strip). The DELETE /cookie/:name endpoint requires a non-empty name, so Selenium validates it client-side before issuing the request.

Source

Thrown at rb/lib/selenium/webdriver/remote/bridge.rb:327

        def execute_async_script(script, *args)
          result = execute :execute_async_script, {}, {script: script, args: args}
          unwrap_script_result result
        end

        #
        # cookies
        #

        def manage
          @manage ||= WebDriver::Manager.new(self)
        end

        def add_cookie(cookie)
          execute :add_cookie, {}, {cookie: cookie}
        end

        def delete_cookie(name)
          raise ArgumentError, 'Cookie name cannot be null or empty' if name.nil? || name.to_s.strip.empty?

          execute :delete_cookie, name: name
        end

        def cookie(name)
          execute :get_cookie, name: name
        end

        def cookies
          execute :get_all_cookies
        end

        def delete_all_cookies
          execute :delete_all_cookies
        end

        #
        # actions

View on GitHub (pinned to aa36b38e69)

Solutions

  1. Check the name is present and non-blank before calling delete_cookie.
  2. Use delete_all_cookies if you intend to clear everything.
  3. Filter blank/nil entries out of any name list before deletion.

Example fix

// before
name = cookie_hash[:name]  # may be nil
driver.manage.delete_cookie(name)

// after
name = cookie_hash[:name]
driver.manage.delete_cookie(name) if name.is_a?(String) && !name.strip.empty?
Defensive patterns

Strategy: validation

Validate before calling

if name.is_a?(String) && !name.strip.empty?
  driver.manage.delete_cookie(name)
end

Type guard

def valid_cookie_name?(name)
  name.is_a?(String) && !name.strip.empty?
end

Prevention

When it happens

Trigger: Calling driver.manage.delete_cookie(name) with nil, '', ' ', or a value that strips to empty; deleting a cookie whose name came from user input or a lookup that returned nil.

Common situations: Iterating a list that contains nil/blank names; reading cookie names from external config that may be empty; defensive cleanup code that tries to delete a cookie regardless of whether it exists.

Related errors


AI-assisted analysis of SeleniumHQ/selenium@aa36b38e69 (2026-08-14). Data as JSON: /api/errors/7e5d2921ea50db5b. Report an issue: GitHub.