3

そこに上級自動化担当者はいますか? SST で Python を使用して自動化スクリプトを作成していますが、SST でいくつかの制限に直面しています。標準の Selenium ライブラリから関数を借りて、テキスト行をダブルクリックして強調表示するスクリプトで使用したいと思います。SST を使用してスクリプトの先頭に webdriver のインスタンスを 1 つ作成し、Web ページでのアクションの実行を開始します。私の質問は、そのインスタンスを Selenium 関数と共有して、この 1 つのアクションを実行する方法はありますか? Selenium でスクリプト全体を実行できることはわかっていますが、私が働いている会社は SST に取り組んでおり、それは受け入れられません。ただし、Selenium 関数を 1 つ入れても誰も気にしないと思います。SSTはSelenium上に構築されているため、このようなアクションを実行するためにインポートできる新しいクラスが作成されている必要があると考えました。実行したいコードは次のようになります。しかしもちろん、Selenium で webdriver の 2 番目のインスタンスを作成すると、新しいブラウザーが開かれ、スクリプトが論理的に半分に分割されます。任意のヒント?

from sst.actions import *
from selenium import webdriver
from selenium.webdriver.firefox.webdriver import *
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.action_chains import *

go_to('http:/yadayada.net/')
## perform a bunch of actions
text = ## get text element with SST

driver = webdriver.Firefox()
action = ActionChains(driver)
action.double_click(text)
action.perform()
4

1 に答える 1

2

基になる webdriver にアクセスするには、次を参照します。

sst.actions._test.browser

インスタンスを直接使用するSSTスクリプトの例を次に示します。webdriver.Firefox

import sst.actions

# a regular SST action
sst.actions.go_to('http:/testutils.org/sst')

# now using webdriver directly 
sst.actions._test.browser.get('http://www.python.org')

あなたの質問の例は次のように書くことができます:

from sst.actions import *
from selenium.webdriver.common import action_chains

go_to('http:/yadayada.net/')
## perform a bunch of actions
text = ## get text element with SST

driver = sst.actions._test.browser
action = action_chains.ActionChains(driver)
action.double_click(text)
action.perform()
于 2013-08-08T16:38:01.513 に答える