在 selenium IDE 中,有一个验证命令。当我将命令导出到 c# 中时,我发现 verify 基本上是 try catch 语句中的断言,并且错误被添加到字符串中。
在我的代码中,我想使用验证命令的功能,但我不想对每个断言都使用 try 和 catch 语句。
有没有人有办法做到这一点?
编辑:
public static void AssertVerticalAlignment(CustomWebDriver webDriver, IElement elementA, IElement elementB, double tolerance = 0)
{
try
{
Assert.AreEqual(elementA.Location.X, elementB.Location.X, tolerance);
}
catch (Exception exception)
{
LogHelper.LogException(exception.Message, exception.StackTrace, webDriver.GetScreenshot());
throw;
}
}
我想要做的是在断言中添加一条消息。它应该说 nameOfElementA 与 nameOfElementB 不一致。但我不想给 elementA 和 elementB 一个 name 属性。
这就是我调用该方法的方式:AssertVerticalAlignment(webdriver, homepage.NameInput, homepage.AgeInput)
Homepage 是一个对象,NameInput 是 Homepage 的一部分。NameInput 是 IElement 类型,与 IWebElement 基本相同,但不能与 html 交互,即。它不能点击等。
所以我想让消息说 NameInput 与 AgeInput 不一致