我想测试以确保搜索显示正确的结果..
我尝试过以下代码,其中包含许多XPath和& amp; CssSelectors。
IWebElement body = driver.FindElement(By.XPath("//span[@class='CoveoQuerySummary']"));
return (body.Text.Contains(searchTerm));
我总是遇到NullReferenceException错误。我踩过它,所以我知道这不是等待问题。
我尝试过这种方法,但并没有走得太远。 (我在调试时得到了相同的NullReferenceException错误。)
IList<IWebElement> all = driver.FindElements(By.CssSelector(".CoveoResultList"));
String[] allText = new String[all.Count];
int i = 0;
foreach (IWebElement element in all)
{
allText[i++] = element.Text;
}
任何和所有帮助将不胜感激!
答案 0 :(得分:1)
var temp = driver.FindElement(By.ClassName("CoveoQuerySummary"), 10);
IWebElement body = driver.FindElement(By.ClassName("CoveoResultList"));
if (body.Text.Contains(searchtext))
result = true;
Assert.IsTrue(result);
以上代码对我有用(最后!!!) - 我认为我的更大问题是/正在尝试使用(并同时学习)页面对象模型。如果我将它们放在PageObject文件中,上面的'FindElement'调用总是返回NullReferenceException。我还在学习和知道这可能需要重构 - 但它确实有效。
任何提示仍然受到赞赏!