断言记录被删除

时间:2014-03-09 19:03:35

标签: java selenium testng

我正在使用带有testng java的webdriver ..

1)如果已删除的记录不再出现在页面上,是否有任何方法可以断言。如果是,请给我一个小样本代码。

由于


感谢您的回复。目前,我没有关注页面对象模式。我做的是:

我只是创建@Test方法并在其中编写我的代码。例如:

@Test(优先级= 0 ......) //代码

@Test(优先级= 1 ......) //代码

依旧......

对于删除,当我创建新用户时,该记录会添加到现有记录中。每个记录都有一个复选框,其中包含特定的xpath。问题是最顶层记录的xpath始终相同,因此断言是否无法删除新记录。

@Gavin:你的'等待'技术似乎很好。

最顶层记录的xpath chechbox = .//* [@ id ='main'] / div / form [2] / table / tbody / tr [1] / td [1] / input

第二个最顶层记录的xpath chechbox = .//* [@ id ='main'] / div / form [2] / table / tbody / tr [2] / td [1] / input

由于

2 个答案:

答案 0 :(得分:0)

您是否考虑过以另一种方式断言测试?

例如断言正确的记录仍然存在?

尝试让WebDriver等待该记录的独特内容呈现,当等待x出现时超时捕获WebDriver异常,然后您知道该项目就在那里。 这对我来说有点像黑客。

这是你应该在表示层测试的吗?我会测试这是一个直接的单元测试,将删除请求发送到“端点”,然后断言返回的结果集的内容/ lsit

答案 1 :(得分:0)

假设你有一个所述记录的By对象,你可以在你的代码中实现一个方法isElementPresent(),它将根据所述元素是否存在的条件返回true或false。

public boolean isElementPresent(WebDriver driver, By by){
   try{
      driver.findElement(by);
      return true;
   }catch(NoSuchElementException e){
     return false;
   }
}