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

ブラウザのアクションを実行した後にセレンにhtmlを出力させる方法はありますか?

基本的に、Firefox 用の Selenium IDE を使用して、ブラウザーでのアクションを記録しています。それらをPythonで再生し、結果のhtmlを取得し、そのhtmlに基づいてさらにアクションを実行したい(たとえば、最初のセレンテストは、Webサイトにログオンしてどこかに移動することである可能性があります.そこにあるものに基づいて、 2 番目のテスト (ユーザーがまだログオンしている場合))。これはセレンを使用して可能ですか?

前もって感謝します!

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 に答える