如上图所示,随机选择人员到收件人的框中,先需要随机选择部门,然后随机选择部门中的某个员工,执行代码如下:
Random rand = new Random();
int departmenttotal;//部门总数
int stafftotal;//某个部门总人数
int departmentsuiji;//部门对应的随机数
int staffsuiji;//某个部门员工对应的随机数
//获取部门的父节点
WebElement parent = driver.findElement(By.xpath(".//*[@id='main-content']/div/div/table/tbody/tr[1]/td[3]/div/ul"));
//用一个list去存放父节点下的web元素
List <WebElement> departmentchildlist = parent.findElements(By.className("ng-scope"));
//得到部门总数
departmenttotal = departmentchildlist.size();
//防止某些部门没有人员,所以做了一个处理
do {
departmentsuiji = rand.nextInt(departmenttotal)+1;
WebElement department = driver.findElement(By.xpath(".//*[@id='main-content']/div/div/table/tbody/tr[1]/td[3]/div/ul/li["+departmentsuiji+"]/div/span[1]"));
department.click();
WebElement staffparent = driver.findElement(By.xpath(".//*[@id='main-content']/div/div/table/tbody/tr[1]/td[3]/div/ul/li["+departmentsuiji+"]/ul"));
List <WebElement> staffchildlist = staffparent.findElements(By.tagName("li"));
stafftotal = staffchildlist.size();
}while(stafftotal==0);
staffsuiji = rand.nextInt(stafftotal)+1;
driver.findElement(By.xpath(".//*[@id='main-content']/div/div/table/tbody/tr[1]/td[3]/div/ul/li["+departmentsuiji+"]/ul/li["+staffsuiji+"]")).click();