以python中的以下selenium测试为例:
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采取进一步行动(例如,第一次硒测试可能是登录到一个网站并导航到某个地方。根据我想要进行的操作第二次测试(w。用户仍然登录))。这可能是使用硒吗?
提前致谢!
答案 0 :(得分:1)
听起来好像你的测试可能最终依赖于彼此,这是非常非常糟糕的想法。
尽管如此,page_source
函数将返回驱动程序正在查看的当前页面的完整HTML:
https://code.google.com/p/selenium/source/browse/py/selenium/webdriver/remote/webdriver.py#429