python - 我需要 Selenium 以更大的分辨率打开它的网络浏览器(最好是最大化)

标签 python selenium selenium-webdriver

我正在使用 Selenium WebDriver 并在 Python 中编码

我到处找遍了,我能找到的最好的是用不同语言写的东西。我也尝试在 Selenium IDE 上使用导出工具,但是当我查看数据时说该功能不支持导出。

编辑:我需要以更大的分辨率打开浏览器的原因是因为我正在测试的 Web 应用程序支持平板电脑分辨率,因此元素会根据浏览器窗口的分辨率而有所不同。

这是我从 IDE 导出的脚本,经过一些修改。


from selenium import webdriver

from selenium.webdriver.common.by import By

from selenium.webdriver.support.ui import Select

from selenium.common.exceptions import NoSuchElementException

import unittest, time, re

from Funk_Lib import RS


class CreatingEditingDeletingVault(unittest.TestCase):
    def setUp(self):
        self.driver = webdriver.Firefox()
        self.driver.implicitly_wait(30)
        self.base_url = "http://cimdev-qa40/"
        self.verificationErrors = []


    def test_creating_editing_deleting_vault(self):
        driver = self.driver
        driver.get(self.base_url + "/Login?contoller=Home")
        driver.find_element_by_id("UserName").click()
        driver.find_element_by_id("UserName").clear()
        driver.find_element_by_id("UserName").send_keys("user@gocodigo.com")
        driver.find_element_by_name("Password").click()
        driver.find_element_by_name("Password").clear()
        driver.find_element_by_name("Password").send_keys("Codigo#123")
        driver.find_element_by_id("fat-btn").click()
        driver.get(self.base_url + "/Content/Vaults/")
        driver.find_element_by_link_text("Content").click()
        driver.find_element_by_link_text("Vaults").click()
        driver.find_element_by_css_selector("button.btn.dropdown-toggle").click()
        driver.find_element_by_link_text("New vault").click()
        driver.find_element_by_name("Name").clear()
        driver.find_element_by_name("Name").send_keys("Test Vault")
        driver.find_element_by_xpath("//button[@onclick=\"vault_action('createvault', null, $('#CreateVault [name=\\'Name\\']').val())\"]").click()
        driver.find_element_by_css_selector("button.btn.dropdown-toggle").click()
        driver.find_element_by_link_text("Rename vault").click()
        driver.find_element_by_name("Id").click()
        Select(driver.find_element_by_name("Id")).select_by_visible_text("Test Vault")
        driver.find_element_by_css_selector("option[value=\"2\"]").click()
        driver.find_element_by_name("Name").clear()
        driver.find_element_by_name("Name").send_keys("Test Change")
        driver.find_element_by_xpath("//button[@onclick=\"vault_action('renamevault', $('#RenameVault [name=\\'Id\\']').val(), $('#RenameVault [name=\\'Name\\']').val())\"]").click()
        driver.find_element_by_css_selector("button.btn.dropdown-toggle").click()
        driver.find_element_by_link_text("Delete vault").click()
        driver.find_element_by_name("Id").click()
        Select(driver.find_element_by_name("Id")).select_by_visible_text("Test Change")
        driver.find_element_by_css_selector("option[value=\"2\"]").click()
        driver.find_element_by_xpath("//button[@onclick=\"vault_action('deletevault', $('#DeleteVault [name=\\'Id\\']').val(), '')\"]").click()

    def is_element_present(self, how, what):
        try: self.driver.find_element(by=how, value=what)
        except NoSuchElementException, e: return False
        return True

    def tearDown(self):
        self.driver.quit()
        self.assertEqual([], self.verificationErrors)

if __name__ == "__main__":
    unittest.main()

最佳答案

Selenium 2.31.0

driver = webdriver.Firefox()

# Resize the window to the screen width/height
driver.set_window_size(300, 500)

# Move the window to position x/y
driver.set_window_position(200, 200)

关于python - 我需要 Selenium 以更大的分辨率打开它的网络浏览器(最好是最大化),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13571349/

相关文章:

python - 将此 python 代码的输出更改为列表?

java - 如何通过 cli 运行 selenium webdriver 测试

java - 如何单击 span 类中的动态元素

java - 使用抽象类型进行转换时使用反射

python - 涉及矩阵运算和约束的优化帮助

python - 使用python对列表进行排序

python - 在Python中填充聚合列

javascript - 如何以编程方式在 CKEDITOR 中选择文本范围?

python - 如何在某些文本之前将 XPath 写入文本?

javascript - 抓取 JavaScript 呈现的页面