私は、Webページ上の文字列をチェックするためにSeleniumを使用しているwhileループを使用しています。返される値は、評価される値とまったく同じです。しかし何らかの理由で、文字列が等しくないと言っています。しかし、彼らは平等です。コードは以下の通りです。私は運がないとこれを戦うためにいくつかのことを試みました。私は間違って何をしていますか?ですから、基本的には、IFは赤が赤と等しくないと言っています。文の評価が間違っている場合
private void LookForString()
{
try
{
while (true)
{
IWebElement curStatus = ieDriver.FindElement(By.Id("sitestatus"));
if (!curStatus.Text.Equals(r.statusClosed))
{
break;
}
}
}
catch (Exception) { RestartProgram(); }
_ "文字列が等しくないと言っています" _ - それらは等しくありません。 _ "しかし、彼らは平等です" - そうではありません。あなたは彼らがだと思うだけです。あなたが間違っている理由を正確に説明することはできません。問題を確実に再現する良い[mcve]を提供することを気にしなかったからです。しかし、私はあなたに保証します.C#は、2つの文字列値が互いに等しいかどうかについて、恣意的に混乱するだけではありません。 –
'curStatus'と' r.statusClosed'の値は何ですか? –
これは文字列の空白に問題がある可能性があります。 'curStatus.Text'と' r.statusClosed'の値の例は何ですか? [this](https://seleniumhq.github.io/selenium/docs/api/dotnet/html/P_OpenQA_Selenium_IWebElement_Text.htm)によると、 'IWebElement'の' Text'プロパティでは、先頭と末尾の空白が削除されますが、残りは崩壊する。 – Poosh