セレン元素の位置決め

ポジショニング要素に関しては、ID、名前、xpath、リンク、css、タグなどで見つけることができます。

IDの位置付け:id = kw

名前の配置:name = wd

Xpathポジショニング:xpath = // input [@ id = 'kw']

リンクの配置:link = link_text     

Cssポジショニング:css =#kw

タグの配置:tag = input

1.IDと名前の配置

要素が人と見なされる場合、IDと名前は人のID番号と名前と見なすことができます。もちろん、これらの属性値が唯一のものであるかどうかは、フロントエンドエンジニアがそれらをどのように設計するかによって異なります。

ロケーター:ページ要素を見つけるために使用されます。一般的なロケーターにはidとnameが含まれます。idが最も便利なため、一部の企業は開発者に各要素にidを追加するように要求しています。IDがない場合は名前を使用できますが、名前は同じ名前にすることができ、複数のページ要素で同じ名前を使用できるため、配置が困難になります。

たとえば、入力ボックスのID = kw

robotframeworkで使用できます:                                                                                                                                                           

 

2xpathポジショニング                                                                                                                                                                

XPathは、XMLドキュメント内の要素を見つけるための言語です。ID番号や名前がない場合はどうなりますか?夕食の友達を見つける方法を考えてみてください。彼の携帯電話は通れず、電話に出られません。彼の家に直接行くと、彼の家の住所、No。xx、xx Road、xx District、xxCityが必要です。Xpathは、この階層関係を通じて要素を見つけることができます。                                                                                                                                                                                           

1. xpathの絶対パス:

xpath = / html / body / div [1] / div [4] / div [2] / div / form / span [1] / input
最外層、つまりhtmlの下の本体の下のdivから開始できます。 ..4番目のdivの下の入力タグ。レベルごとのロックにより、目的の要素が見つかります。

2. xpathの相対パス: 

絶対パスの使用は、代替手段がない場合によく使用されます。ほとんどの場合、相対パスを使用する方が簡単です。

2.1。要素自体:
Xpathは要素自体の属性も使用できます:
Xpath = // * [@ id = 'kw1']
//特定のレベルを示し、*は特定のタグ名を示します。@ id = kw1は、この要素のIDがkw1に等しいことを意味します。
もちろん、一般的にタグ名を定義できます
。Xpath= // input [@ id = 'kw1']
要素自体、使用できる属性は、次のようにidとnameに限定されません
。Xpath= // input [@ type = 'text']
Xpath = // input [@ autocomplete = 'off']
ただし、これらの要素が要素を一意に識別できることを確認してください。

2.1。上司を探す:
私たちが探しているのが、まだ世帯登録番号(ID番号)を指定または登録していない新生児であるが、あなたは常に
あなたの父親の側にいて、あなたの父親だけである場合名前とID番号。これにより、最初にあなたのお父さんを見つけ、自然にあなたを見つけることができます。
要素の親属性は次のとおりです。

<form id="form1" class="fm" action="/s" name="f1">
<span class="bg s_ipt_wr">
   <input id="kw1"class="s_ipt"type="text"maxlength="100"name="wd"utocomplete="off"> 

Get Dad:XPath // span = [@ class = 'bgs_ipt_w'] / INPUT                                                                                                                              一意のプロパティの父がない場合、祖父は次を見つけることができます:XPath = // form [@ ID = 'Form1'] / span / INPUT such
a htmlまでレベルを調べてください。そうすれば、それは絶対パスです。

2.3。ブール書き込み:
人の名前が一意でない場合、ID番号は一意ではありませんが、張三豊と呼ばれ、ID番号が123である人は、人を一意に識別できます。次に、次のように記述できます
。Xpath= // input [@ id = 'kw1' and @ name = 'wd']
can andもちろん、または:
Xpath = // input [@ id = 'kw1'or @ name =' wd ']
しかし、またはの実際の意味はあまり良くありません。通常、探している人の名前が張三豊であるか、ID番号が123であると言う必要はありません。

2.4 CSSポジショニング
       CSS(Cascading Style Sheets)は、HTMLおよびXMLドキュメントのパフォーマンスを説明するために使用される言語です。CSSはセレクターを使用して、属性をページ要素にバインドします。これらのセレクターは、別のポジショニング戦略としてセレンで使用できます。
CSSは、コントロールの任意の属性をより柔軟に選択でき、一般に、ポジショニング速度はXPathよりも高速です。、しかし、初心者が習得して使用することはより困難です。以下では、CSSの構文と使用法を詳細に紹介します。


クラス属性を介した配置:
css = .s_ipt
css = .bgs_btn
csscss_selector()メソッドはCSS言語で要素を見つけるために使用され、ドット(。)は要素がクラス属性を介して配置されていることを示します。
id属性を介して検索します
。css=#kw
css =#su
ポンド記号(#)は、id属性を使用して要素を検索することを意味します。
タグ名で検索:
css = input
は、タグ名を使用して、シンボルIDなしでCSS言語の要素を検索します。タグ名を直接使用しますが、タグ名が重複する可能性が非常に高いことがわかったため、この方法は非常に重要です。要素を一意に識別することは困難です。
親子関係で検索:
css = span> input
上記の記述は、親要素があり、そのタグ名がspanであることを意味します。タグ名が入力されているすべての子要素を検索します。
属性で検索:
css = input [autocomplete = 'off']
css = input [maxlength = '100']
css = input [type = 'submit']
CSSでは、要素の任意の属性を使用することもできます。これらの属性は一意にすることができますこの要素の識別。
組み合わせポジショニング:
もちろん上記のポジショニング戦略を組み合わせて使用​​することもできます。これにより、要素の独自性が大幅に強化されます。

css = span.bgs_ipt_wr> input.s_ipt
css = span.bgs_btn_wr> input#su

には親要素があり、タグ名はspan、bg s_ipt_wrというクラス属性値、子要素、タグ名が入力されます、そしてこの子要素のクラス属性値はs_iptと呼ばれます。

おすすめ

転載: blog.csdn.net/zangba9624/article/details/108542976