Seleniumを学習して以来、要素の配置に関して最初に思い浮かぶのは find_element_by_xxx です。
しかし、今日勉強していたら、次の by を使わない別のメソッド find_element があることを発見しました。
そこで、ソースコードをクリックして表示しようとしましたが、失敗しました(vscodeがサポートしていないためかどうかはわかりません)。
そこで、インターネット上で関連コンテンツを検索したところ、この方法は確かに実現可能であると思われるので、疑わしいソースコードを次のように掲載しました。
def find_element(self, by=By.ID, value=None):
"""
根据策略和定位器找到给定的元素。
:使用方法:
element = driver.find_element(By.ID, 'foo')
:rtype: WebElement
"""
if self.w3c:
if by == By.ID:
by = By.CSS_SELECTOR
value = '[id="%s"]' % value
elif by == By.TAG_NAME:
by = By.CSS_SELECTOR
elif by == By.CLASS_NAME:
by = By.CSS_SELECTOR
value = ".%s" % value
elif by == By.NAME:
by = By.CSS_SELECTOR
value = '[name="%s"]' % value
return self.execute(Command.FIND_ELEMENT, {
'using': by,
'value': value})['value']
ページのカプセル化にこのメソッドを使用して、最初の要素が位置決めキー、2 番目の要素が位置決め値であるタプルを渡してみます。
class Page:
url = None
driver = None
@classmethod
def cls_element(cls, loc: tuple):
return cls.driver.find_element(*loc)
def element(self, loc: tuple):
"""
定位元素的方法
:param loc:
:return:
"""
return self.driver.find_element(*loc)
def elements(self, loc: tuple):
"""
定位一组元素或多个元素
:param loc:
:return:
"""
return self.driver.find_elements(*loc)
最後に:以下の完全なソフトウェア テスト ビデオ チュートリアルが編集され、アップロードされています。必要な友人は自分で入手できます[100% 無料保証]
ソフトウェアテスト面接文書
私たちは高給の仕事を見つけるために勉強しなければなりません。以下の面接の質問は、アリババ、テンセント、バイトなどの一流インターネット企業の最新の面接資料からのものであり、バイトの上司の中には権威ある回答をしている人もいます。 set 面接情報に基づいて、誰もが満足のいく仕事を見つけることができると思います。