web-dev-qa-db-ja.com

Selenium:要素にテキストが含まれているかどうかをテストします

Selenium IDEでは、要素の内部テキストに特定の文字列が含まれているかどうかをどのようにテストできますか?例えば:

<p id="fred">abcde</p>
'id=fred' contains "bcd" = true)
18
Mark W

Selenium-IDEのドキュメント は、この状況で役立ちます。

探しているコマンドはassertTextで、ロケーターはid=fredで、テキストは*bcd*になります。

23
Petr Janeček

次のものも使用できます。

assertElementPresent
css=p#fred:contains('bcd')
4
Aleh Douhi

これは単純なワイルドカードで実行できます:

verifyText
id="fred"
*bcd*

Selenium IDE Doc を参照してください

4
Mark W

もしそうならjQueryを使用できますか?

$("p#fred:contains('bcd')").css("text-decoration", "underline");
1
The Angry Saxon

正規表現がうまくいくようです:

"The simplest character set is a character. The regular expression "the" contains three
character sets: "t," "h" and "e". It will match any line with the string "the" inside it.
This would also match the Word "other". "

(サイトから: http://www.grymoire.com/Unix/Regular.html

Visual Studioを使用している場合は、すべての種類の正規表現(含むだけではありません)で文字列を評価する機能があります。

using System.Text.RegularExpressions;

Regex.IsMatch("YourInnerText", @"^[a-zA-Z]+$");

私が投稿した式は、文字列に文字のみが含まれているかどうかをチェックします。

あなたの正規表現は、私のリンクによれば、「bcd」または実行時に構築する文字列になります。または:

Regex.IsMatch("YourInnerText", @"bcd");

(とにかくそのような何か)

お役に立てば幸いです。