我正在为我的工作进行自动化网络测试,但我的代码出现问题。它没有做任何事情
以下是我正在尝试使用的网站代码:<button class="fa fa-2x sidebar-button pull-left fa-bars" ng-click="offcanvasleft()" ng-class="activeLeft ? 'fa-bars' : 'fa-bars'">::before</button>
这是我的代码:driver.findElement(By.cssSelector("//*[@id=\"mainrow\"]/div/div/button[1]")).click();
有人可以帮我吗?谢谢!
答案 0 :(得分:1)
您可以这样使用:
WebELement btnBefore= driver.findElement(By.XPATH("//button[contains(text(),'::before')]");
btnBefore.click();
答案 1 :(得分:0)
driver.findElement(By.XPATH("//button[@class="fa fa-2x sidebar-button pull-left fa-bars]").click();
这是假设java语法是正确的。我主要在python中写硒。
答案 2 :(得分:0)
根据 HTML 您已共享 WebElement 是 Angular Element ,因此您必须诱导 WebDriverWait 将 ExpectedConditions 子句作为 elementToBeClickable ,如下所示:
public function getRequest( Request $request)
{
$request2 = $this->client->post($request->url, [
'headers' => ['Content-Type' => 'application/json'],
'body' => json_encode($request->request_data)
]);
$response = \GuzzleHttp\json_decode($request2->getBody());
return response()->json(['data' => json_decode($response->d)],$request->getStatusCode());
}