1

助けが必要です!

Webdriver コードに変換すると// ERROR: Caught exception [ERROR: Unsupported command [isTextPresent]]が表示される私のセレン IDE コードを以下に示します

<tr>
    <td>assertTextNotPresent</td>
    <td>//*[@id='collapseComment']/div/div/div[2]/label</td>
    <td>Max. 3072 characters</td>
</tr>

基本的に、テキスト文字列 ' Max. 3072 文字' 実行時のページ

私が使用できるこれと同等のJavaを提供して、誰かが私を助けてくれれば幸いです。

乾杯シャン

4

2 に答える 2

3

最初に目にするのは、assertTextNotPresent の IDE コマンドがターゲットと値を受け入れないことです。検索対象のテキストのパターンを含むターゲットのみが必要です。現在、テストでは、「//*[@id='collapseComment']/div/div/div[2]/label」のテキストがページのどこにもないと主張しています。

assertNotText の IDE コマンドを使用すると、正しく動作します。assertNotText には、ターゲット内のロケーターと比較する値が必要です。IDE を使用して Java にエクスポートすると、assertNotText が正しく変換されます。

それを念頭に置いて、JUnit 4を使用したJavaの答えは次のとおりです。

WebDriver driver = new FirefoxDriver();
...
WebElement element = driver.FindElement(By.XPath("//*[@id='collapseComment']/div/div/div[2]/label"));
assertThat("Max. 3072 characters", is(not(element.getText())));

また

assert(false, element.getText().contains("Max. 3072 characters"));
于 2012-09-21T12:16:36.400 に答える
0

使用しているアサーション/単体テスト フレームワークについては言及していませんが、これは C# と NUnit にあります。

IWebDriver firefoxDriver = new FirefoxDriver();
IWebElement element = firefoxDriver.FindElement(By.XPath("//*[@id='collapseComment']/div/div/div[2]/label"));
Assert.IsFalse(element.Text.Contains("Max. 3072 characters"));
于 2012-05-31T14:26:04.303 に答える