0

Pythonでセレンテストを実行しています。次の HTML コードで特定の問題が発生しています.....

<span class="cke_label" id="cke_8_label">Source</span>

私は次のことを試しました.......

self.assert_element_present_by_class('Source button', 'cke_8_label', 'cke_label')**

ここに関数があります........

def assert_element_present_by_class(self, description, id, name):
    sel = self.selenium
    try:
        self.assert_(sel.is_element_present("//" + id + "[contains(@class,'" + name + "')]"))
        logging.info('PASS: "' + description + '" is present')
    except Exception:
        logging.exception('FAIL: "' + description + '" is not present')

これにより、このエラーが発生します.......

ファイル "Template_Designer_P37.py"、293 行目、assert_element_present_by_class 内 self.assert_(sel.is_element_present("//" + id + "[contains(@class,'" + name + "')]")) ファイル "C: \Python27\lib\unittest\case.py"、420 ​​行目、assertTrue で self.failureException(msg) を発生させます。AssertionError: False は true ではありません

id * strong text *が存在することを単にアサートしようとするなど、他のいくつかの方法を試しました

私の推測では、問題は「id」を取り囲んでいるということです

何かご意見は?

4

1 に答える 1

2

間違った xpath を使用して、タグ名の代わりに ID を挿入しようとしています。したがって、正しいバージョンは

self.assert_(sel.is_element_present("//*[@id='" + id + "' and contains(@class,'" + name + "')]"))
于 2012-04-25T10:33:59.973 に答える