1

以python中的以下硒测试为例:

 import unittest
 from selenium import webdriver
 from selenium.webdriver.common.keys import Keys

 class PythonOrgSearch(unittest.TestCase):

     def setUp(self):
         self.driver = webdriver.Firefox()

     def test_search_in_python_org(self):
         driver = self.driver
         driver.get("http://www.python.org")
         self.assertIn("Python", driver.title)
         elem = driver.find_element_by_name("q")
         elem.send_keys("selenium")
         elem.send_keys(Keys.RETURN)
         self.assertIn("Google", driver.title)

     def tearDown(self):
         self.driver.close()

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

取自:http ://selenium-python.readthedocs.org/en/latest/getting-started.html#id2

结果输出类似于:

----------------------------------------------------------------------
Ran 1 test in 15.566s

OK

有没有办法让 selenium 在执行浏览器操作后输出 html?

基本上,我使用 Selenium IDE for Firefox 来记录浏览器上的操作。我想在 python 上播放它们,获取生成的 html,并基于该 html 采取进一步的行动(例如,第一次 selenium 测试可能是登录到一个网站并导航到某个地方。根据那里我想进行一个第二次测试(用户仍然登录))。这可以使用硒吗?

提前致谢!

4

1 回答 1

1

听起来好像您的测试最终可能会相互依赖,这是一个非常非常糟糕的主意。

尽管如此,该page_source函数将返回驱动程序正在查看的当前页面的完整 HTML:

https://code.google.com/p/selenium/source/browse/py/selenium/webdriver/remote/webdriver.py#429

于 2013-06-14T08:10:41.047 回答